Caros amigos,
Depois de um bom tempo correndo atrás de todas as dicas sobre Hibernate, consegui fazer uma aplicação funcionar, primeiro numa aplicação cliente/servidor e depois no ambiente web utilizando o TomCat.
SeuProjeto
WEB-INF
classes
lib
src
work
|
hibernate.connection.driver_class = com.mysql.jdbc.Driver hibernate.connection.url = jdbc:mysql://localhost:3306/SeuProjeto hibernate.connection.username = usuario hibernate.connection.password = senha |
public class Usuario {
private String usCod;
private String usSenha;
private String usNome;
private String usEmail;
public Usuario(){
}
public Usuario(String usCod, String usSenha, String usNome, String usEmail) {
this.setUsCod(usCod);
this.setUsSenha(usSenha);
this.setUsNome(usNome);
this.setUsEmail(usEmail);
}
//... IMPORTANTE: colocar os métodos GETs e SETs...
}
|
import java.util.List;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.classic.Session;
import org.hibernate.criterion.Expression;
public class UsuarioDAO{
private SessionFactory factory;
public UsuarioDAO() throws Exception{
factory = new Configuration().addClass(Usuario.class).buildSessionFactory();
}
public void UsInserir(Usuario us) throws Exception {
Session session = factory.openSession();
session.save(us);
session.flush();
session.close();
}
public void UsAlterar(Usuario us) throws Exception {
Session session = factory.openSession();
session.update(us);
session.flush();
session.close();
}
public void UsExcluir(Usuario us) throws Exception {
Session session = factory.openSession();
session.delete(us);
session.flush();
session.close();
}
}
|
< ?xml version="1.0"?>
< !DOCTYPE hibernate-mapping PUBLIC "-//Hibernate Mapping DTD 3.0//EN"
"hibernate-mapping-3.0.dtd">
< hibernate-mapping>
< class name="Usuario" table="tb_usuarios">
< id name="UsCod" column="USCOD" type="string">
< generator class="assigned"/>
< /id>
< property name="UsSenha" column="USSENHA" type="string"/>
< property name="UsNome" column="USNOME" type="string"/>
< property name="UsEmail" column="USEMAIL" type="string"/>
< /class>
< /hibernate-mapping>
|
/*
MySQL Data Transfer
Source Host: localhost
Source Database: seuprojeto
Target Host: localhost
Target Database: seuprojeto
Date: 24/11/2006 06:11:53
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for tb_usuario
-- ----------------------------
CREATE TABLE `tb_usuario` (
`USCOD` varchar(50) NOT NULL default '',
`USSENHA` varchar(50) default NULL,
`USNOME` varchar(50) default NULL,
`USEMAIL` varchar(50) default NULL,
PRIMARY KEY (`USCOD`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='InnoDB free: 3072 kB';
-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO `tb_usuarios` VALUES ('well', '123', 'wellington marinheiro', 'wmarinheiro@hotmail.com');
|
public class Teste {
public static void main(String[] args) throws Exception {
try
{
String log = "login";
String senha = "abc";
String nome = "Rafael";
String email = "Rafael@email.com.br";
UsuarioDAO dao = new UsuarioDAO;
Usuario usuario = new Usuario(log,senha,nome,email);
dao.UsInserir(usuario);
System.out.println("Registro inserido com sucesso!!!");
}
catch(Exception e)
{
System.out.println("Não foi possivel, Erro: " + e.getMessage());
}
}
}
|
SeuProjeto:
hibernate3.jar
hibernate-mapping-3.0.dtd
WEB-INF
classes
hibernate.properties
log4j.properties
Usuario.hbm.xml (Este vem automaticamente, não precisa salvar aqui...)
lib
...com todos os JARs trazidos do pacote Hibernate 3.2
src
hibernate.properties
log4j.properties
UsuarioDAO.java
Teste.java
Usuario.java
Usuario.hbm.xml
Execute este arquivo e, se tudo estiver como descrito, voce terá inserido o primeiro registro numa base de dados utilizando o hibernate...