Hibernate 入门案例
package cn.itcast.hibernate;
import java.util.Date;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.Transaction;
import cn.itcast.hibernate.domain.User;
public class Base {
public static void main(String[] args) {
Session s = HibernateUtil.getSession(); //只初始化一次,使用HibernateUril
Transaction tx = s.beginTransaction();
User user = new User();
user.setBirthday(new Date());
user.setName("liuqiming");
s.save(user);
tx.commit(); //在关闭之前提交。
s.close(); //使用后关掉. 一定要放在finnal关闭,不然数据库会死掉.
System.out.println("保存成功!"); //保存之后没数据,JDBC自动提交事物,但是hibernate缺省的将这个自动提交去掉了。
System.out.println(user.getId());
}
static void addUser(User user){ //一般规范写法
Session s = null;
Transaction tx = null;
try{
s = HibernateUtil.getSession();
tx = s.beginTransaction();
s.save(user);
tx.commit();
}catch (HibernateException e) {
if (tx!=null) {
tx.rollback();
}
throw e; //一定要将异常抛出去。
}finally{
s.close();
}
}
static void addUser2(User user){ //一般规范写法也可以简写成这样,报错时,数据库会回滚。
Session s = null;
Transaction tx = null;
try{
s = HibernateUtil.getSession();
tx = s.beginTransaction();
s.save(user);
tx.commit();
}finally{
s.close();
}
}
}

浙公网安备 33010602011771号