Hibernate: criar tabela e banco automaticamente
Oi gente, eu por aqui de novo ^^
Alguém consegue me explicar como eu faço para gerar o banco e a tabela automaticamente no meu sistema? Estou usando o Hibernate 5 com JPA.
Alguém consegue me explicar como eu faço para gerar o banco e a tabela automaticamente no meu sistema? Estou usando o Hibernate 5 com JPA.
Laura Müller
Curtidas 0
Melhor post
Ivan Santos
12/06/2017
Laura, estou estudando Hibernate ainda, mas acredito que você faça isso na classe de persistência, em Estratégia de Geração de Tabela (no Netbeans), ou esta propriedade no arquivo XML:
<property name="javax.persistence.schema-generation.database.action" value="drop-and-create"/>
Achei esse material legal sobre JPA: http://www.javaworld.com/article/2077817/java-se/understanding-jpa-part-1-the-object-oriented-paradigm-of-data-persistence.html
Na verdade espero que não haja nenhum problema em postar links aqui no fórum, qualquer coisa me envia uma mensagem que eu te passo mais uns materiais que consegui.
<property name="javax.persistence.schema-generation.database.action" value="drop-and-create"/>
Achei esse material legal sobre JPA: http://www.javaworld.com/article/2077817/java-se/understanding-jpa-part-1-the-object-oriented-paradigm-of-data-persistence.html
Na verdade espero que não haja nenhum problema em postar links aqui no fórum, qualquer coisa me envia uma mensagem que eu te passo mais uns materiais que consegui.
GOSTEI 1
Mais Respostas
Ivan Santos
12/06/2017
Ah, você pode modificar a ação para "create" também, então ele não apagaria caso já existisse a tabela.
GOSTEI 0
Estevão Dias
12/06/2017
Olá Laura,
Acrescentando a resposta do Hugo, caso você esteja utilizando Hibernate JPA e, consequentemente realizando suas configurações no persistence.xml, um parâmetro deve ser adicionado a URL de conexão com o banco:
Assim o seu banco será criado quando o aplicativo for executado.
Mas é importante que a propriedade abaixo esteja configurada corretamente, ou as informações cadastradas serão perdidas na próxima vez que você rodar a aplicação.
Assim, apenas se houverem alterações nos modelos a tabela sofrerá modificações.
Um abraço.
Acrescentando a resposta do Hugo, caso você esteja utilizando Hibernate JPA e, consequentemente realizando suas configurações no persistence.xml, um parâmetro deve ser adicionado a URL de conexão com o banco:
<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/banco?createDatabaseIfNotExist=true"/>
Assim o seu banco será criado quando o aplicativo for executado.
Mas é importante que a propriedade abaixo esteja configurada corretamente, ou as informações cadastradas serão perdidas na próxima vez que você rodar a aplicação.
<property name="hibernate.hbm2ddl.auto" value="update"/>
Assim, apenas se houverem alterações nos modelos a tabela sofrerá modificações.
Um abraço.
GOSTEI 1