Olá, meu código não tem nenhum erro, ele roda e dá as mensagens, mas ao tentar consultar via SELECT no banco de dados ou no próprio command line, a tabela PRODUTOS está vazia, nenhum item é inserido nela.
MEU PERSISTENCE
<persistence-unit name="loja"
transaction-type="RESOURCE_LOCAL">
<properties>
<property name="javax.persistence.jdbc.driver"
value="org.h2.Driver" />
<property name="javax.persistence.jdbc.url"
value="jdbc:h2:mem:loja" />
<property name="javax.persistence.jdbc.user" value="sa" />
<property name="javax.persistence.jdbc.password" value="" />
<property name="hibernate.dialect"
value="org.hibernate.dialect.H2Dialect" />
<property name="hibernate.show_sql" value="true" />
<property name="hibernate.hbm2ddl.auto" value="update" />
</properties>
</persistence-unit>
MEU CADASTRODEPRODUTO
package br.com.alura.loja.testes;
import java.math.BigDecimal;
import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence;
import br.com.alura.loja.modelo.Produto;
public class CadastroDeProduto {
public static void main(String[] args) {
Produto produto = new Produto();
produto.setNome("CELULAR");
produto.setDescricao("IPHONE 14");
produto.setPreco(new BigDecimal("800"));
EntityManagerFactory factory = Persistence.createEntityManagerFactory("loja");
EntityManager em = factory.createEntityManager();
em.getTransaction().begin();
em.persist(produto);
em.getTransaction().commit();
em.close();
}
}
MINHA CLASSE PRODUTO
package br.com.alura.loja.modelo;
import java.math.BigDecimal;
import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table;
@Entity @Table(name = "Produtos") public class Produto {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String nome;
private String descricao;
private BigDecimal preco;
*getters and setters omitidos*