SqlSession:代表Java程序和数据库之间的会话,(HttpSession是Java程序和浏览器之间的会话)
SqlSessionFactory:是生产SqlSession的工厂
工厂模式:如果创建某一个对象,使用的过程基本固定,那么我们就可以把创建这个对象的相关代码封装到一个"工厂类"中,以后都使用这个工厂类来"生产"我们需要的对象
MyBatisTest
dart
package com.baidu.mybatis.test;
import com.baidu.mybatis.mapper.UserMapper;
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 org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
public class MyBatisTest {
@Test
public void testMyBatis() throws IOException {
// 加载核心配置文件
InputStream ras = Resources.getResourceAsStream("mybatis-config.xml");
// 获取SqlSessionFactoryBuilder
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
// 获取sqlSessionFactory
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(ras);
// 获取SqlSession
SqlSession sqlSession = sqlSessionFactory.openSession();
// 获取mapper接口对象
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 测试功能
int result = mapper.insertUser();
// 提交事务
sqlSession.commit();
System.out.println("result = " + result);
}
}
