Chinaunix首页 | 论坛 | 博客
  • 博客访问: 558144
  • 博文数量: 136
  • 博客积分: 4010
  • 博客等级: 上校
  • 技术积分: 1343
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-19 23:18
文章分类

全部博文(136)

文章存档

2011年(28)

2009年(60)

2008年(48)

我的朋友

分类: Java

2009-03-05 15:29:22

前阵子看完了尚学堂的hibernate教程,到现在差不多都忘光了,看来要多点练习才行,单看好像没什么多大用处。。。不知道各位网友有啥建议。。。今天又看了智播传客的视屏,抽取点东西出来。
    里面谈到hibernate的初始化问题,其实hibernate初始化由于要读取hibernate.hbm.xml配置文件等操作,时间比较长,所以我们在项目里面hibernate最好只初始化一次,这样才能提高系统的效率。
    我们建立一个hibernate的初始化工具类,代码如下:
   

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;


public final class HibernateUtil {
    private static SessionFactory sessionFactory;
    private HibernateUtil(){}
    
    static {
        Configuration config = new Configuration().configure();
        sessionFactory = config.buildSessionFactory();
    }
    
    public static SessionFactory getSessionFactory(){
        return sessionFactory;
    }
    public static Session getSession() {
        return sessionFactory.openSession();
    }

}

调用的话就用如下代码,方法如下

 

public void SaveUser() {
        Session session = null;
        Transaction tx;
        try {
            session = HibernateUtil.getSession();
            tx = session.beginTransaction();
            
            session.save(User);
            tx.commit();
        }catch(HibernateException e){
            if(tx!=null)
                tx.rollback();
            throw e;
        }finally{
            if(session != null) {
                session.close();
            }
        }
        
    }

 

这些代买完全可以复用。。。

阅读(2216) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~