Professional Documents
Culture Documents
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.
Ferramentas utilizadas:
Java (jdk-1_5_0_06-windows-i586-p)
Eclipse (lomboz)
TomCat (jakarta-tomcat-5.5.10)
Hibernate 3.02
MySql 4.01
SeuProjeto
WEB-INF
classes
lib
src
work
O grande problema para fazer funcionar o Hibernate é a configuração das pastas, saber quem é quem e onde colocar...
Sei que não precisamos de todos mas vamos pecar por excesso:
Pegue todos os arquivos .jar do hibernate, juntamente com driver MySql e coloque-os na pasta lib
Depois você poderá fazer uma limpeza, retirando alguns mas sempre lembrando de testar a aplicação...
Abra o hibernate.properties com algum editor (notepad) e altere os parametros de conformidade com a configuração
da sua conexão com a base de dados (é moleza...mas extremamente importante, sem isto jamais o sistema
encontrará a base de dados)
É algo parecido com isto:
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 Usuario(){
}
Vamos criar a Classe UsuarioDAO, responsavel pela conexao com a base de dados, salve-a como UsuarioDAO.java
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;
Criar o arquivo com os dados abaixo e salvar como Usuario.hbm.xml. Ele deverá ficar na mesma pasta do
Usuario.java
Nota: O arquivo abaixo é um xml e para funcionar, retire o espaço que existe entre o sinal < e a linha de comando. Ele
foi inserido para que o browser não interpretasse como tal.
< 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>
Caso voce não tenha criado a tabela na base de dados este script deverá criar a tabela.
Abra o admin do mysql e, dentro de uma nova query, cole o texto abaixo e execute-o:
/*
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');
Para testar esta fase, não vamos ainda para o TomCat, criaremos uma classe main para teste...
Copie o conteúdo abaixo em uma nova classe main e salve com o nome Teste.java, dentro da pasta src
try
{
String log = "login";
String senha = "abc";
String nome = "Rafael";
String email = "Rafael@email.com.br";
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...
É pouco mas já é um começo, na proxima etapa, conforme prometido, vamos inserir registros num ambiente web,
através de uma pagina jsp.