Oi Lucas.
Então, nenhum erro é acusado. Vou mandar o código e o log do console.
package br.com.caelum.financas.teste;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Calendar;
import javax.persistence.EntityManager;
import br.com.caelum.financas.util.JPAUtil;
import br.com.financas.modelo.Categoria;
import br.com.financas.modelo.Conta;
import br.com.financas.modelo.Movimentacao;
import br.com.financas.modelo.TipoMovimentacao;
public class TesteMovimentacaoComCategoria {
public static void main(String[] args) {
Categoria categoria1 = new Categoria("Viagem");
Categoria categoria2 = new Categoria("Negócios");
Conta conta = new Conta();
conta.setId(2);
Movimentacao movimentacao1 = new Movimentacao();
movimentacao1.setData(Calendar.getInstance());
movimentacao1.setDescricao("Viagem à SP");
movimentacao1.setTipoMovimentacao(TipoMovimentacao.SAIDA);
movimentacao1.setValor(new BigDecimal(100.0));
movimentacao1.setCategorias(Arrays.asList(categoria1, categoria2));
movimentacao1.setConta(conta);
Movimentacao movimentacao2 = new Movimentacao();
movimentacao2.setData(Calendar.getInstance());
movimentacao2.setDescricao("Viagem ao RJ");
movimentacao2.setTipoMovimentacao(TipoMovimentacao.SAIDA);
movimentacao2.setValor(new BigDecimal(300.0));
movimentacao2.setCategorias(Arrays.asList(categoria1, categoria2));
movimentacao2.setConta(conta);
EntityManager em = new JPAUtil().getEntityManager();
em.getTransaction().begin();
em.persist(categoria1); // Agora categoria1 é Managed
em.persist(categoria2); // Agora categoria2 é Managed
em.persist(movimentacao1);
em.persist(movimentacao2);
em.getTransaction().commit();
em.close();
}
}
log
INFO: HHH000102: Fetching database metadata
Mai 08, 2017 2:44:32 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000396: Updating schema
Mai 08, 2017 2:44:33 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: GO.CATEGORIA
Mai 08, 2017 2:44:33 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [id, nome]
Mai 08, 2017 2:44:33 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: []
Mai 08, 2017 2:44:33 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [sys_c0052212]
Mai 08, 2017 2:44:33 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: GO.CLIENTE
Mai 08, 2017 2:44:33 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [endereço, id, conta_id, profissao, nome]
Mai 08, 2017 2:44:33 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: [fk96841ddaa1163d8]
Mai 08, 2017 2:44:33 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [sys_c0052192]
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: GO.CONTA
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [id, banco, agencia, cliente_id, titular, numero]
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: [fk3e4474fff80ac78]
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [sys_c0052207, sys_c0052185]
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: GO.MOVIMENTACAO
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [id, conta_id, tipomovimentacao, valor, data, descricao]
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: [fk257eb923a1163d8]
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [sys_c0052214]
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: GO.MOVIMENTACAO_CATEGORIA
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [categorias_id, movimentacao_id]
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: [fkfc77e4f721b416cb, fkfc77e4f7eeb4689c]
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: []
Mai 08, 2017 2:44:34 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000232: Schema update complete
Hibernate:
select
SEQ_CATEG.nextval
from
dual
Hibernate:
select
SEQ_CATEG.nextval
from
dual
Hibernate:
select
SEQ_MOVIMENTA.nextval
from
dual
Hibernate:
select
SEQ_MOVIMENTA.nextval
from
dual
Hibernate:
insert
into
Categoria
(nome, id)
values
(?, ?)
Hibernate:
insert
into
Categoria
(nome, id)
values
(?, ?)
Hibernate:
insert
into
Movimentacao
(conta_id, data, descricao, tipoMovimentacao, valor, id)
values
(?, ?, ?, ?, ?, ?)
Hibernate:
insert
into
Movimentacao
(conta_id, data, descricao, tipoMovimentacao, valor, id)
values
(?, ?, ?, ?, ?, ?)