mybatis简单案例源码详细【注释全面】——Utils层(MybatisUtils.java)

 /**  
* @Title: MybatisUtils.java
* @Package org.util
* @Description: TODO该方法的主要作用:
* @author A18ccms A18ccms_gmail_com  
* @date 2017-10-5 下午8:38:14
* @version V1.0  
*/
package org.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;


 /**   
 *    
 * 项目名称:ssm_chop1   
 * 类名称:MybatisUtils   
 * 类描述:   mybatis的工具类
 * 创建人:Mu Xiongxiong  
 * 创建时间:2017-10-5 下午8:38:14   
 * 修改人:Mu Xiongxiong   
 * 修改时间:2017-10-5 下午8:38:14   
 * 修改备注:   
 * @version    
 *    
 */
public class MybatisUtils {
	
	private static SqlSessionFactory factory;
	
	/**
	 * 在静态代码下,factory只会被创建一次
	 */
	static{
		System.out.println("static factory====================");
		try {
			InputStream inputStream = Resources.getResourceAsStream("mybatis-config.xml");
			factory = new SqlSessionFactoryBuilder().build(inputStream);
		} catch (IOException e) {
			// TODO 异常执行块!
			e.printStackTrace();
		}
		
	}
	
	/**
	 * 
	* @Description: 该方法的主要作用:创建连接
	* @Title: createSqlSession
	* @param  @return 设定文件  
	* @return  返回类型:SqlSession   
	* @throws
	 */
	public static SqlSession createSqlSession(){
		return factory.openSession(false);  	//true为自动提交事务
	}
	
	
	/**
	 * 
	* @Description: 该方法的主要作用:
	* @Title: closeSqlSession
	* @param  @param sqlSession 设定文件  
	* @return  返回类型:void   
	* @throws
	 */
	public static void closeSqlSession(SqlSession sqlSession){
		if(null!=sqlSession){
			sqlSession.close();
		}
	}

}

原文地址:https://www.cnblogs.com/a1111/p/12816141.html