Mybatis+mysql dynamic paging query data case - tool class (MybatisUtil.java)

package cn.bdqn.mhouse.util;

import java.io.IOException;
import java.io.Reader;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

/**
 *
*    
* Project name: mhouse   
* Class name: MybatisUtil   
* Class description: Tool class
* Founder: Mu Xiongxiong  
* Creation time: 2017-3-15 1:31:54 PM   
* Modified by: Mu Xiongxiong   
* Modified time: 2017-3-15 1:31:54 pm   
* Modification Notes:   
* @version    
*
 */
public class MybatisUtil {
	private static SqlSessionFactory factory;
	private static ThreadLocal<SqlSession> sl=new ThreadLocal<SqlSession>();
	private static final String RESOURCE="mybatis-config.xml";
	
	/**
	 * static initialization
	 */
	static{
		try {
			Reader reader=Resources.getResourceAsReader(RESOURCE);
			SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
			factory=builder.build(reader);
		} catch (IOException e) {
			e.printStackTrace ();
		}catch (Exception e) {
			e.printStackTrace ();
		}
	}
		
	/**
	 *
	* @Title: getSession
	* @Description: The main function of this method: open the session
	* @param @return setting file  
	* @return Return type: SqlSession   
	* @throws
	 */
	public static SqlSession getSession(){
		SqlSession session=sl.get();
		if(session==null){
			session=factory.openSession();
			sl.set(session);
		}
		return session;
	}
	
	/**
	 *
	* @Title: closeSession
	* @Description: The main function of this method: close the session
	* @param setting file  
	* @return Return type: void   
	* @throws
	 */
	public static void closeSession(){
		SqlSession session=sl.get();
		sl.set(null);
		if(session!=null){
			session.close();
		}
	}

}



Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326289737&siteId=291194637