Não faz a criação da nova tabela e apresenta e excessão:
Hibernate:
insert
into
Conta
(agencia, banco, numero, titular)
values
(?, ?, ?, ?)
Exception in thread "main" java.lang.IllegalArgumentException: Unknown entity: br.com.caelum.financas.modelo.Movimentacao
at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:705)
at org.hibernate.internal.SessionImpl.persist(SessionImpl.java:688)
at br.com.caelum.financas.teste.TesteJPARelacionamento.main(TesteJPARelacionamento.java:35)
O Código estava correto, contudo copiei do projeto no capitulo seguinte e o erro persistiu. Até essa fase estava tudo funcionando perfeitamente.
package br.com.caelum.financas.teste;
import java.math.BigDecimal;
import java.util.Calendar;
import javax.persistence.EntityManager;
import br.com.caelum.financas.modelo.Conta;
import br.com.caelum.financas.modelo.Movimentacao;
import br.com.caelum.financas.modelo.TipoMovimentacao;
import br.com.caelum.financas.util.JPAUtil;
public class TesteJPARelacionamento {
public static void main(String[] args) {
Conta conta = new Conta();
conta.setAgencia("111");
conta.setBanco("Itau");
conta.setNumero("54321");
conta.setTitular("Leonardo");
Movimentacao movimentacao = new Movimentacao();
movimentacao.setData(Calendar.getInstance());
movimentacao.setDescricao("Churrascaria");
movimentacao.setTipoMovimentacao(TipoMovimentacao.SAIDA);
movimentacao.setValor(new BigDecimal("200.0"));
movimentacao.setConta(conta);
EntityManager manager = new JPAUtil().getEntityManager();
manager.getTransaction().begin();
manager.persist(conta);
manager.persist(movimentacao);
manager.getTransaction().commit();
manager.close();
}
}