九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Hibernate 工具類

package com.newer;

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.cfg.Configuration;


/**
 * HibernateSessionFactory 工具類 <br/>
 * 此類用于獲取 sessionFactory、session等
 */

public class HibernateSessionFactory {

    private static String CONFIG_FILE_LOCATION = "/hibernate.cfg.xml";  //位置classPath里面: 

    private static final ThreadLocal<Session> threadLocal = new ThreadLocal<Session>();
    private static org.hibernate.SessionFactory sessionFactory;
    private static String configFile = CONFIG_FILE_LOCATION;
    
   //private  static Configuration configuration = new Configuration(); //XML配置時使用
    private  static Configuration configuration = new AnnotationConfiguration(); //@注解配置時使用

    static {
              try {
                     configuration.configure(configFile);
                     sessionFactory = configuration.buildSessionFactory();
              } catch (Exception e) {
                     System.err.println("%%%% Error Creating SessionFactory %%%%");
                     e.printStackTrace();
             }
    }
 
   /**
     * 構(gòu)造方法
     */
    private HibernateSessionFactory() {

    }
 

    /**
      * 獲取Session的方法 <br/>
      * session使用完后應(yīng) close()釋放掉<br/>
      * 因為每個session 都會帶上一個數(shù)據(jù)庫連接
      * @return
      */
    public static Session getSession() throws HibernateException {
            Session session = (Session) threadLocal.get();

            if (session == null || !session.isOpen()) {
                     if (sessionFactory == null) {
                                    rebuildSessionFactory();
                     }
                     session = (sessionFactory != null) ? sessionFactory.openSession() : null;
                     threadLocal.set(session);
            }

            return session;
    }

    public static void rebuildSessionFactory() {
            try {
                    configuration.configure(configFile);
                    sessionFactory = configuration.buildSessionFactory();
            } catch (Exception e) {
                    System.err.println("%%%% Error Creating SessionFactory %%%%");
                    e.printStackTrace();
            }
    }

    public static void closeSession() throws HibernateException {
            Session session = (Session) threadLocal.get();
            threadLocal.set(null);

            if (session != null) {
                    session.close();
            }
    }

    /**
     * 獲取sessionFactory的方法
     * @return
     */
    public static org.hibernate.SessionFactory getSessionFactory() {
               return sessionFactory;
    }

    /**
     * 清空 sessionFactory 的方法
     * @return
     */
    public static void setConfigFile(String configFile) {
              HibernateSessionFactory.configFile = configFile;
              sessionFactory = null;
    }

    /**
     * 獲取 configuration 的方法
     * @return
     */
   public static Configuration getConfiguration() {
             return configuration;
   }

} 

 

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
一個用myeclipse開發(fā)hibernate的入門例子 - 我愛JAVA - BlogJ...
一個簡單的Hibernate工具類HibernateUtil
hibernate 要點
沒有SPRING,hibernate 延遲加載
Hibernate事務(wù)控制
SSH框架網(wǎng)上商城項目第1戰(zhàn)之整合Struts2、Hibernate4
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服