zoukankan      html  css  js  c++  java
  • 使用 Hibernate 完成 HibernateUtils 类 (适用于单独使用Hibernate或Struts+Hibernate)

    package com.istc.Utilities;
    
    import org.hibernate.Session;
    import org.hibernate.SessionFactory;
    import org.hibernate.cfg.Configuration;
    import org.springframework.stereotype.Repository;
    
    import javax.annotation.Resource;
    import java.io.File;
    
    /**
     * Created by lurui on 2017/2/3 0003.
     * Hibernate版本为5.2.7Final
     */
    public class HibernateUtils {
        @Resource
        private static SessionFactory sessionFactory;
        private static Session session;
    
        private HibernateUtils(){
        }
    
    //    交给Spring管理后, 不需要进行hibernate的sessionFactory的管理
    //    否则用一下的代码对hibernate进行初始化
        static {
            Configuration cfg = new Configuration().configure(new File("src\com.istc.config\hibernate.cfg.xml"));
            sessionFactory = cfg.buildSessionFactory();
        }
    
        /**
         * 获取数据库Session对象
         */
        public static Session getSession(){
            //如果当前线程有session则返回该session
            //如果没有则创建,且自动关闭session,必须要代码中显式关闭session
            return sessionFactory.getCurrentSession();
        }
    
        /**
         * 关闭数据库Session对象
         */
        public static void closeSession(){
            if (session != null && session.isOpen())
                session.close();
        }
    
        /***
         * 关闭传入的数据库Session对象
         */
        public static void closeSession(Session session){
            if (session != null && session.isOpen())
                session.close();
        }
    
        /**
         * 关闭整个hibernate的sessionFactory
         */
        public static void close(){
            if(sessionFactory !=null && sessionFactory.isOpen())
                sessionFactory.close();
        }
    }
  • 相关阅读:
    如何把一个用户加入sodu组
    linux bond配置步骤,七种bond模式说明
    python 面向对象(进阶篇)
    lnmp搭建的常见错误
    Linux运维人员如何学习python编程
    运维日常工作知识总结
    《JS原型》
    《读王福朋有感》
    《使用Win32DiskImager安装Ubuntu16.04》
    因为无耻的查重系统,我删除了四篇随笔
  • 原文地址:https://www.cnblogs.com/luruiyuan/p/6417356.html
Copyright © 2011-2022 走看看