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(); } } }