Está é minha classe de usuário:
package br.prv.modelo;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class Usuarios {
//atributos
@Id
private String matricula;
//este campo nao pode receber valores nulo (nullable = false) e tem o tamanho 60
@Column (name = "login",nullable = false, length = 60)
private String login;
@Column (name = "senha",nullable = false, length = 20)
private String senha;
@Column (name = "niveldeacesso",nullable = false, length = 20)
private int nivelDeAcesso;
//getter e setter
public String getMatricula() {
return matricula;
}
public void setMatricula(String matricula) {
this.matricula = matricula;
}
public String getLogin() {
return login;
}
public void setLogin(String login) {
this.login = login;
}
public String getSenha() {
return senha;
}
public void setSenha(String senha) {
this.senha = senha;
}
public int getNivelDeAcesso() {
return nivelDeAcesso;
}
public void setNivelDeAcesso(int nivelDeAcsso) {
this.nivelDeAcesso = nivelDeAcsso;
}
}
Está é minha classe daoUsuario:
package br.prv.dao;
import java.util.List;
import javax.management.Query;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.EntityTransaction;
import javax.persistence.Persistence;
import br.prv.modelo.Usuarios;
public class DaoUsuario {
private EntityManagerFactory fabrica;
private EntityManager gerente;
private EntityTransaction transacao;
public DaoUsuario() {
fabrica = Persistence.createEntityManagerFactory("conexao");
gerente = fabrica.createEntityManager();
fabrica.close();
}
//inicio do metodo incluir
public void incluir(Usuarios usuario){
try {
//instanciei uma nova transacao
transacao = gerente.getTransaction();
//iniciei a transacao
transacao.begin();
System.out.println("Usuário salvo com sucesso!");
if (usuario.getMatricula() == null) {
//operacao de insercao
gerente.persist(usuario);
//Atualiza dados do usuario
} else {
usuario = gerente.merge(usuario);
}
//finalizo a transacao
transacao.commit();
} catch (Exception e) {
e.printStackTrace();
System.out.println("Erro na inclusão do usuário." +e);
}
}
//final do metodo incluir
//inicio do metodo excluir
public void excluir(String matricula){
try {
//instanciei uma nova transacao
transacao = gerente.getTransaction();
//iniciei a transacao
transacao.begin();
System.out.println("Usuário excluído com sucesso!");
//consulta o usuario através da sua matricula
Usuarios usuario = gerente.find(Usuarios.class, matricula);
System.out.println("Excluindo os dados de: " + usuario.getLogin());
//exclui o usuario da base de dados
gerente.remove(usuario);
gerente.getTransaction().commit();
} catch (Exception e) {
System.out.println("Erro ao excluir usuário."+e);
}
//final do metodo excluir
}
//inicio do metodo consultar
public Usuarios consultarPorMatricula(String matricula){
transacao = gerente.getTransaction();
Usuarios usuario = null;
try {
usuario = gerente.find(Usuarios.class, matricula);
System.out.println("Usuário: " +usuario.getLogin() + " , "+ "Matrícula:" + usuario.getMatricula() + " , " + "Nível de Acesso:" + usuario.getNivelDeAcesso());
} catch (Exception e) {
System.out.println("Erro ao localizar o usuário: "+e);
}
return usuario;
}
//inicio do metodo listar usuarios
@SuppressWarnings("rawtypes")
public List<Usuarios> obterUsuarios(){
transacao = gerente.getTransaction();
List<Usuarios> usuario = null;
try {
String query = "select * from processosceref.tb_usuarios";
Query q = (Query) gerente.createNativeQuery(query);
@SuppressWarnings("unused")
List lista = ((javax.persistence.Query) q).getResultList();
} catch (Exception e) {
System.out.println("Erro ao localizar o usuário: "+e);
}
return usuario;
}
//final do metodo listar usuarios
//inicio do metodo alterar
public void alterar(Usuarios usuarios){
transacao = gerente.getTransaction();
transacao.begin();
try {
Usuarios u = gerente.merge(usuarios);
System.out.println(u);
transacao.commit();
} catch (Exception e) {
System.out.println("Erro ao localizar o usuário: "+e);
}
}
}
Está é minha persistence.xml
<?xml version="1.0" encoding="UTF-8"?> org.hibernate.ejb.HibernatePersistenceEste é o Erro.
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.
Exception in thread “main” javax.persistence.PersistenceException: No Persistence provider for EntityManager named conexao
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:56)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:34)
at br.prv.dao.DaoUsuario.(DaoUsuario.java:21)
at br.prv.main.main.main(main.java:16)