⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 inithibernateutil.java

📁 中青会员消费排行榜-最终版 包括基于Struts+Hibernate的前台和简易后台
💻 JAVA
字号:
package cn.zqnet8.rank.util;
import java.util.HashMap;
import java.util.Map;

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


/*
 * 该类为Hibernate的具体操作类,
 * 包括初始化SessionFactory和获取Session对象
 */
public class InitHibernateUtil {
	private static SessionFactory sf=null;
	private static boolean flag=false;
	private static Map map=new HashMap();

	
	/*
	 * 初始化SessionFactory
	 */
	public static void initSessionFactory(){
		if(flag==false){
			Configuration config=new Configuration().configure();
			sf=config.buildSessionFactory();
			flag=true;
		}
	}
	public static void destroySessionFactory(){
		if(sf!=null&&!sf.isClosed()){
			sf.close();
		}
	}
	/*
	 * 关闭session
	 */
	public static void closeSessionFactory(){
		if(sf!=null&&!sf.isClosed()){
			sf.close();
		}
	}
	/*
	 * 获取session
	 */
	public static Session getSession(){
		Session session=null;
		long id=Thread.currentThread().getId();
		if(map.get(id)==null){
			if(sf==null){
				initSessionFactory();
			}
			session=sf.openSession();
			map.put(id, session);
			
		}else{
			session=(Session)map.get(id);
		}
		
		return session;
	}
	public static void closeSession(){
		Session session=(Session)map.get(Thread.currentThread().getId());
		if(session!=null){
			map.remove(Thread.currentThread().getId());
			session.close();
		}
		
	}
	

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -