estou parendendo e estou com problemas para identificar no Hibernate como inserir ou atualizar um objeto.
Quando eu tento inserir, ele atualiza o objeto no banco, nunca criando um novo. Alguém pode me dar uma luz?
publicclassHibernateUtil{privatestaticfinalSessionFactorysessionFactory;static{try{System.out.println("Init");// Create the SessionFactory from hibernate.cfg.xmlsessionFactory=newConfiguration().configure().buildSessionFactory();}catch(Throwableex){// Make sure you log the exception, as it might be swallowedSystem.err.println("Initial SessionFactory creation failed."+ex);thrownewExceptionInInitializerError(ex);}}publicstaticSessionFactorygetSessionFactory(){returnsessionFactory;}}
A chave primária é fundamental para o hibernate identificar qdo vc está atualizando um objeto (já tem a chave) ou qdo é um novo registro (ele deve gerar uma primary key nova)
Vc está chamando o comando ‘save’ e vc está vendo na saída um ‘update’ ? Manda aí tb a saída do programa caso n consiga resolver o problema.
A
andmart
Desc no mysql:
+-------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| nome | varchar(255) | YES | | NULL | |
| age | int(11) | YES | | NULL | |
+-------+--------------+------+-----+---------+----------------+
3 rows in set (0.31 sec)