Olá pessoal , ando estudando JPA/Hibernate…
E em algumas apostilas eu vejo o seguinte esquema por exemplo para criar tabelas.
Configuration conf = new AnnotationConfiguration();
conf.configure();
SchemaExport se = new SchemaExport(conf);
se.create(true, true);
e em outras vejo assim:
EntityManagerFactory factory =


Persistence.createEntityManagerFactory("livraria");


factory.close()
Tecnicamente ambas nao criam a tabela?Alguma esta errada?Ou estou me confundindo?
Aguardo respostas, Obrigado.
Sim, você está se confundindo.
O segundo server para criar o EntityManagerFactory que é o seu “acesso” ao banco de dados.
Ele é como um comunicador entre vc e o DB.
Entao Jake,mas ele cria a tabela do mesmo modo nao?
Ou e apenas pq esta configurado no Properties.xml para criar a tabela caso nao exista?
Pq ele cria a tabela, quando o executo.
O comando do hibernate se.create(true, true); vai criar toda vez. É para isso que esse comando é utilizado.
Agora, como você mesmo disse, se você retirar o “create” ou “update” do seu persistence.xml as tabelas não serão mais criadas ao chamar o Factory do EntityManager. [=
Eu imaginava algo assim mesmo , muito Obrigado…eu queria confimar minha Teoria ja que nao li isto em nenhum local.
Valeu Jake !