SqlSessionFactory是MyBatis的关键字,它是单个数据库映射关系经过编译后的内存镜像,SqlSessionFactory对象的实例可以通过SqlSessionFactoryBuilder对象来获得,而SqlSessionFactoryBuildr则可以从XML配置文件或一个预先定制的Configuration的实例构建出SqlSessionFactory的实例
每一个MyBatis的应用程序都以一个SqlSessionFactory对象的实例为核心。SqlSessionFactory是线程安全的,他一旦被创建,应该在应用执行期间都存在,在应用运行期间不要重复创建多次,建议使用单例模式,SqlSessionFactory是创建SqlSession的工厂。
SqlSessionFactory的常用方法如:
SqlSession.openSession() 创建SqlSession对象。
运行 SqlSession 测试 MyBatis
public class Demo {
public static void main(string[] args) throws Exception {
// 读取mybatis-config.xml 文件
Inputstream input = Resoutces.getResources.getResourceAstream("mybatis-config.xm");
// 初始化mybatis,创建SqlsessionFactory类的实例
SqlsessionFactory sql = new SqlSessionFactoryBuilder.build(input);
// 创建session实列
SqlSession session = SqlSessionFactory.openSession();
ManyToManyTest t = new ManyToManyTest();
// 根据用户id查询用户,测试一对多关系
t.testSelectUserById(session);
// 根据订单id查询订单,测试多对多关系
t.testSelectOrderById(session) ;
// 提交事务
session.commit();
// 关闭session
session.close();
}
}