Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Hibernate não salva a tabela

Estou com o seguinte problema e já estou tentando resolver já tem algum tempo e em sucesso, se alguém que entenda puder me ajudar eu agradeço.

No hibernate aparece que salvou e tudo certo, só que na hora de fazer o select na tabela, ela não aparece, e no database aparece como "Empty set".

Aqui está o código da classe de teste:

public class TesteJPA {

public static void main(String[] args) {

Conta conta = new Conta(); conta.setTitular("Lucas"); conta.setBanco("Caixa"); conta.setAgencia("123"); conta.setNumero("54321");

EntityManagerFactory emf = Persistence .createEntityManagerFactory("financas");

EntityManager em = emf.createEntityManager(); em.getTransaction().begin();

em.persist(conta);

em.getTransaction().commit(); em.close(); }

4 respostas

Código da classe conta:

@Entity @SequenceGenerator(name = "SEQ_CONTAS", sequenceName = "SEQ_CONTAS", initialValue = 1) public class Conta {

@Id @GeneratedValue(strategy = GenerationType.AUTO, generator = "SEQ_CONTAS") private Integer id; private String titular; private String banco; private String agencia; private String numero;

public Integer getId() { return id; }

public void setId(Integer id) { this.id = id; }

public String getTitular() { return titular; }

public void setTitular(String titular) { this.titular = titular; }

public String getBanco() { return banco; }

public void setBanco(String banco) { this.banco = banco; }

public String getAgencia() { return agencia; }

public void setAgencia(String agencia) { this.agencia = agencia; }

public String getNumero() { return numero; }

public void setNumero(String numero) { this.numero = numero; }

XML

org.hibernate.ejb.HibernatePersistence br.com.caelum.financas.modelo.Conta org.hibernate.ejb.HibernatePersistence br.com.caelum.financas.modelo.Conta org.hibernate.ejb.HibernatePersistence br.com.caelum.financas.modelo.Conta

Saída do console:

fev 26, 2017 7:56:20 PM org.hibernate.annotations.common.Version INFO: HCANN000001: Hibernate Commons Annotations {4.0.1.Final} fev 26, 2017 7:56:20 PM org.hibernate.Version logVersion INFO: HHH000412: Hibernate Core {4.1.9.Final} fev 26, 2017 7:56:20 PM org.hibernate.cfg.Environment INFO: HHH000206: hibernate.properties not found fev 26, 2017 7:56:20 PM org.hibernate.cfg.Environment buildBytecodeProvider INFO: HHH000021: Bytecode provider name : javassist fev 26, 2017 7:56:22 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure INFO: HHH000402: Using Hibernate built-in connection pool (not for production use!) fev 26, 2017 7:56:22 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure INFO: HHH000115: Hibernate connection pool size: 20 fev 26, 2017 7:56:22 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure INFO: HHH000006: Autocommit mode: true fev 26, 2017 7:56:22 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure INFO: HHH000401: using driver [com.mysql.jdbc.Driver] at URL [jdbc:mysql://localhost/contas] fev 26, 2017 7:56:22 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure INFO: HHH000046: Connection properties: {user=root, password=**, autocommit=true, release_mode=auto} fev 26, 2017 7:56:23 PM org.hibernate.dialect.Dialect INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQL5InnoDBDialect fev 26, 2017 7:56:23 PM org.hibernate.engine.jdbc.internal.LobCreatorBuilder useContextualLobCreation INFO: HHH000423: Disabling contextual LOB creation as JDBC driver reported JDBC version [3] less than 4 fev 26, 2017 7:56:23 PM org.hibernate.engine.transaction.internal.TransactionFactoryInitiator initiateService INFO: HHH000268: Transaction strategy: org.hibernate.engine.transaction.internal.jdbc.JdbcTransactionFactory fev 26, 2017 7:56:23 PM org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory INFO: HHH000397: Using ASTQueryTranslatorFactory fev 26, 2017 7:56:25 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute INFO: HHH000228: Running hbm2ddl schema update fev 26, 2017 7:56:25 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute INFO: HHH000102: Fetching database metadata fev 26, 2017 7:56:25 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute INFO: HHH000396: Updating schema fev 26, 2017 7:56:25 PM org.hibernate.tool.hbm2ddl.TableMetadata INFO: HHH000261: Table found: contas.conta fev 26, 2017 7:56:25 PM org.hibernate.tool.hbm2ddl.TableMetadata INFO: HHH000037: Columns: [numero, banco, id, agencia, titular] fev 26, 2017 7:56:25 PM org.hibernate.tool.hbm2ddl.TableMetadata INFO: HHH000108: Foreign keys: [] fev 26, 2017 7:56:25 PM org.hibernate.tool.hbm2ddl.TableMetadata INFO: HHH000126: Indexes: [primary] fev 26, 2017 7:56:25 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute INFO: HHH000232: Schema update complete Hibernate: insert into Conta (agencia, banco, numero, titular) values (?, ?, ?, ?)

solução!

Como eu faço para saber o nome da tabela que salvou e em qual database, pelo o que eu vi parece que está tudo certo só que na hora buscar no console, só aparece Empty Set, já criei do database mais ele aparece como vazio.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software