您的位置:首页 > 其它

Mybatis的核心对象

2018-04-04 20:34 204 查看

SqlSessionFactory

该类主要作用是用来获取SqlSession对象的。其实例一旦被创建,在整个应用程序执行期间都会存在。在构建其实例时,建议使用单例模式,一个数据库对应一个SqlSessionFactory实例。

SqlSession

其主要作用是执行持久化操作。SqlSession对象是线程不安全的,每一个线程都应该有自己的SqlSession实例,不能共享。因此其使用范围最好在一个请求或一个方法中,不要将其放在一个类的静态字段、实例字段或者任何类型的管理范围。

另外SqlSession对象有很多数据库操作的方法,具体可查看这个网址Mybatis的java API,http://www.mybatis.org/mybatis-3/zh/java-api.html#sqlSessions

下面是关于获取SqlSession实例的工具类的代码:

package com.itheima.utils;

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

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

public class MybatisUtils {
private static SqlSessionFactory sqlSessionFactory = null;
static {
try {
Reader reader = Resources.getResourceAsReader("mybatis-config.xml");
sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
} catch (IOException e) {
e.printStackTrace();
}
}
public static SqlSession getSession() {
return sqlSessionFactory.openSession();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: