SqlSessionFactory和Sqlsession

来源:互联网 发布:mac队基地 编辑:程序博客网 时间:2024/06/06 05:33

SqlSessionFactory一旦被创建,应该在应用程序执行期间都存在,不要重复创建多次,建议使用单例模式。SqlSession的实例不能被共享,也是线程不安全的。

创建方法如下:

public class SqlSessionFactoryUtil{

  //创建SqlSessionFactory

private volatile static SqlsessionFactory sqlSessionFactory = null;

public static SqlSessionFactory getSqlSessionFactory(){
if(sqlSessionFactory==null){
synchronized(sqlSessionFactory.class){
if(sqlSessionFactory==null){
try {

Reader reader = Resources.getResourceAsReader(mybatis-xml);

sqlSessionFactory =new SqlSessionFactoryBuilder().build(reader);

}catch (IOException e) {

e.printStackTrace();

}  
}
}
}
return sqlSessionFactory;
}


     //创建SqlSession   

    SqlSession sqlSession = null;

try {

sqlSession = sqlSessionFactory.openSession();

sqlSession.insert("cn.jarjar.dao.BlogMapper.insertBlog", blog);

sqlSession.commit(true)}

catch (Exception e) {

e.printStackTrace();

sqlSession.rollback(true);

}finally {

sqlSession.close();

} 

}

阅读全文
0 0
原创粉丝点击