Article image
Marcos Chaves
Marcos Chaves26/06/2024 10:48
Compartilhe

Resolvendo Problemas de Persistência no Spring Boot: Uma Experiência Pessoal

    Fala galera, tudo bem?

    Neste artigo, gostaria de compartilhar uma experiência que tive recentemente relacionada à persistência das entidades/modelos da minha aplicação no banco de dados, e quem sabe pode ser o problema que você também está enfrentando.

    Em uma aplicação usando o framework Spring Boot da linguagem Java, me deparei com um problema relacionado a persistência das entidades/modelos no meu banco de dados. Mesmo realizando a conexão e as entidades estarem corretamente implementadas, nenhuma tabela era criada no banco de dados, e o pior... nenhum log de erro era exibido no terminal. Então, o que poderia estar acontecendo?

    Depois de pesquisar sobre o problema em questão descobri que o erro estava na forma como estruturei meu projeto e não na implementação. Acontece que o Spring Boot escaneia recursivamente os pacotes da aplicação a partir do pacote da classe principal. Ou seja, se seu pacote que contém as entidades estiver fora do pacote da classe principal (que era o meu caso) o Spring Boot não irá escaneá-lo automaticamente.

    image image

    Tendo isso em vista, você pode escolher entre duas opções para solucionar o problema:

    1- Manter a estrutura de arquivos do projeto

    Nesse caso é necessário especificar explicitamente o pacote que contém as suas entidades. Para isso você pode usar a anotação @EntityScan, que irá receber o pacote das entidades, na classe principal do projeto conforme o exemplo abaixo:


    image

    2- Mover o pacote das entidades

    Essa é a opção mais recomendada, na qual movemos o pacote que contém nossas entidades para dentro do em que está a classe principal. Assim o Spring Boot irá escanear automaticamente o pacote.


    Feito as alterações conforme sua preferência, ao executar a aplicação as entidades serão persistidas no banco de dados.

    Espero que este artigo tenha sido útil para compreender e resolver problemas de persistência de entidades no Spring Boot. Compartilhar esta experiência foi importante para mim, e espero que possa ajudar outros desenvolvedores a superar desafios semelhantes. Agradeço pela atenção e desejo sucesso em seus projetos.

    Compartilhe
    Comentários (0)