mybits連接數據庫

package com.gyj.util;

import java.io.IOException;
import java.io.InputStream;

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

public class MybatisUtil {
	//使用線程綁定
	private static ThreadLocal<SqlSession> tl = new ThreadLocal<SqlSession>();
	private static SqlSessionFactory sqlFactory = null;
	static{
		try {
			InputStream is = Resources.getResourceAsStream("mybatis-config.xml的路徑");
			sqlFactory = new SqlSessionFactoryBuilder().build(is);
			is.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	} 
	
	public static SqlSession getSqlSession(){
		SqlSession sqlSession = tl.get();
		if(sqlSession==null){
			sqlSession = sqlFactory.openSession();
			tl.set(sqlSession);
		}
		return sqlSession;
	}
	
	public static void close(){
		SqlSession sqlSession = getSqlSession();
		if(sqlSession != null){
			sqlSession.close();
			tl.remove();
		}
	}
	
	public static void commit(){
		SqlSession sqlSession = getSqlSession();
		if(sqlSession != null){
			sqlSession.commit();
			close();
		}
	}
	
	public static void rollback(){
		SqlSession sqlSession = getSqlSession();
		if(sqlSession != null){
			sqlSession.rollback();
			close();
		}
	}
	
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章