É possível criar as tabelas a partir das anotações com JPA.
Antes era assim com hibernate
Configuration configuration = new AnnotationConfiguration();
configuration.configure();
SchemaExport se = new SchemaExport(configuration);
se.create(true, true);
E agora com JPA como eu faço para gerar os scripts das tabelas?
Você está usando o Hibernate como provedor de persistência?
Caso esteja, coloca o elemento, abaixo, no persistence.xml:
J
jukinha
Isso mesmo, eu utilizo o Hibernate como provider.
Essa instrução vai gerar um arquivo com os comandos SQL? se sim onde?
Ou ele manda os comandos direto para banco de dados
você poderia postar um exemplo.
Agradeço antecipadamente pela ajuda.
Jukinha
nbluis
ele cria no banco de dados tudo o que nao existir…
thiagocg
voce pode usar o codigo abaixo:
publicclassGerarBanco{publicstaticvoidmain(Stringarg[]){//cria uma configuracaoAnnotationConfigurationcfg=newAnnotationConfiguration();//hibernate.cfg.xml cfg.configure();//Responsável pela criação do schema e execuçãoSchemaExportexport=newSchemaExport(cfg);//export.create(imprimir o sql, se deve executar)//drop e cria novamente a tabelaexport.create(true,true);}}
só precisa mapear corretamente as classes no seu hibernate.cfg.xml ou no seu persitence.xml
cleverson.sacramento
Se você preferir usar o persistence.xml ao invés do hibernate.cfg.xml, você pode fazer assim:
publicclassGerarBanco{publicstaticvoidmain(Stringarg[]){//cria uma configuracaoAnnotationConfigurationcfg=newAnnotationConfiguration();//hibernate.cfg.xml cfg.configure();//Responsável pela criação do schema e execuçãoSchemaExportexport=newSchemaExport(cfg);//export.create(imprimir o sql, se deve executar)//drop e cria novamente a tabelaexport.create(true,true);}}
só precisa mapear corretamente as classes no seu hibernate.cfg.xml ou no seu persitence.xml
Tentei assim com o persistence.xml, mas não funcionou. Desta forma só funcionou com o hibernate.cfg.xml. Eu postei em uma mensagem anterior como fazer para usar o persistence.xml.