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();
        }
    }
  • 相关阅读:
    洛谷 P1653 猴子 解题报告
    洛谷 P2024 [NOI2001]食物链 解题报告
    洛谷 P1966 火柴排队 解题报告
    洛谷 P1311 选择客栈 解题报告
    洛谷 P3959 宝藏 解题报告
    二进制枚举子集技巧
    洛谷 P1841 [JSOI2007]重要的城市 解题报告
    洛谷 P2324 [SCOI2005]骑士精神 解题报告
    vector-size
    ubuntu 更换软件源
  • 原文地址:https://www.cnblogs.com/luruiyuan/p/6417356.html
Copyright © 2011-2022 走看看