1. 资源下载
Hibernate: hibernate-distribution-3.3.2.GA-dist.zip
2.在eclipse建一个java工程
3. 环境配置
所需jar包:
Hibernate:
hibernate3.jar-------->核心包
commons-collections-3.1.jar----------->增强的集合包
antlr-2.7.6.jar---------->语法分析包
jta-1.1.jar---------------> Java事务API包
javassist-3.9.0.GA.jar------ 字节码增加包,动态代理 (cglib.jar)
dom4j-1.6.1.jar------------>xml解析包
slf4j-api-1.5.8.jar---------->通用日志包
以上jar包为hibernate自带的包
数据库驱动:自己加载所需要的DB的jdbc驱动
xxx.jar
日志包:
log4j-1.2.15.jar---------------->log4j日志包
slf4j-log4j12-1.5.8.jar---------->通用日志转log4j日志包。(slf4j接口以log4j形式实现)
这两个包不是hibernate自带,需要自己加载。
将以上jar包导入工程
4.建立domain 映射类
package com.test.hibernate.domain;
import java.util.Date;
public class User {
private int id;
private String name;
private int age;
private Date date;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Date getDate() {
return date;
}
public void setDate(Date date) {
this.date = date;
}
}
5.建立映射文件User.hbm.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 package="com.test.hibernate.domain">
<class name="User" table="t_user">
<id name="id" column="us_id"></id>
<property name="name" column="us_name" />
<property name="age" column="us_age"></property>
<property name="date" column="us_date" type="timestamp"></property>
</class>
</hibernate-mapping>
6.建立hibernate配置文件
<?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.Oracle9Dialect</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@127.0.0.1:1521:XE</property>
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.username">fmsys</property>
<property name="hibernate.connection.password">0455</property>
<property name="hibernate.show_sql">true</property>
<property name="current_session_context_class">thread</property>
<mapping resource="com/test/hibernate/domain/User.hbm.xml"/>
</session-factory>
</hibernate-configuration>
7.测试类
package com.test.hibernate.client;
import java.util.Date;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import com.test.hibernate.domain.User;
public class HibernateTest {
public static void main(String[] args) {
Configuration cfg = new Configuration();
SessionFactory sessionFactory = cfg.configure().buildSessionFactory();
Session session=null;
Transaction ts =null;
try {
session = sessionFactory.openSession();
ts = session.beginTransaction();
User user = new User();
user.setId(4);
user.setName("fffffff");
user.setAge(12);
user.setDate(new Date());
session.save(user);
ts.commit();
}catch (Exception e) {
e.printStackTrace();
ts.rollback();
}
finally {
session.close();
sessionFactory.close();
}
}
}