Boa tarde galera,
Estou tentando gravar um cliente no meu banco de dados mysql utilizando o framework Hibernate.
Só que sempre quando tento gravar, me lança esse erro : class Cliente not found while looking for property: idCliente
Já verifiquei as configurações, mapeamentos das classes e etc … Só que não encontrei nada diferente do que eu aprendi.
Segue abaixo os codigos fontes …
Alguém poderia me da uma dica o que possa ser ?
main.java
package com.br.cit.bean;
import com.br.cit.enttity.Cliente;
import com.br.cit.persistence.ClienteDAO;
public class Main {
public static void main(String[] args) {
Cliente cliente = new Cliente();
cliente.setIdCliente(1);
cliente.setLogin("Administrator");
cliente.setNome("Jorge Hudson");
cliente.setCpf("123456789");
ClienteDAO cd = new ClienteDAO();
try {
cd.saveCliente(cliente);
} catch (Exception e) {
e.printStackTrace();
}
}
}
Cliente.java
package com.br.cit.enttity;
public class Cliente {
private Integer idCliente;
private String login;
private String cpf;
private String nome;
public Cliente() {
super();
}
public Cliente(Integer idCliente, String login, String cpf, String nome) {
super();
this.idCliente = idCliente;
this.login = login;
this.cpf = cpf;
this.nome = nome;
}
public Integer getIdCliente() {
return idCliente;
}
public void setIdCliente(Integer idCliente) {
this.idCliente = idCliente;
}
public String getLogin() {
return login;
}
public void setLogin(String login) {
this.login = login;
}
public String getCpf() {
return cpf;
}
public void setCpf(String cpf) {
this.cpf = cpf;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
}
cliente.hdm.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="Cliente" table="tbl_cliente">
<id name="idCliente" column="IDCLIENTE">
<generator class="assigned"/>
</id>
<property name="login" column="LOGIN" type="string"/>
<property name="cpf" column="CPF" type="string"/>
<property name="nome" column="NOME" type="string"/>
<!-- Mapeamento Relacional -->
</class>
</hibernate-mapping>
ClienteDao.java
package com.br.cit.persistence;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import com.br.cit.enttity.Cliente;
public class ClienteDAO {
private SessionFactory factory;
public ClienteDAO(){
factory = new Configuration().addClass(Cliente.class).buildSessionFactory();
}
public void saveCliente(Cliente cliente)throws Exception{
Session session = factory.openSession();
session.save(cliente);
session.flush();
session.close();
}
public void updateCliente(Cliente cliente)throws Exception{
Session session =factory.openSession();
session.update(cliente);
session.flush();
session.close();
}
public void deleteCliente(Cliente cliente)throws Exception{
Session session = factory.openSession();
session.delete(cliente);
session.flush();
session.close();
}
}
mysql_hibernate.cfg.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/cit</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">root</property>
<mapping resource="com.br.cit.enttity.Cliente.hdm.xml"/>
</session-factory>
</hibernate-configuration>
tbl_cliente.sql
create table tbl_cliente(
IDCLIENTE INTEGER NOT NULL,
LOGIN VARCHAR(15) NOT NULL,
CPF VARCHAR(9) NOT NULL,
NOME VARCHAR(25)NOT NULL,
PRIMARY KEY(IDCLIENTE)
);