由下面这个测试类开始分析其内部运行原理:
public class UserMapperTest {
@Test
public void testQueryUserById() throws IOException {
String resource ="mybatis/mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
SqlSession sqlSession = sqlSessionFactory.openSession(true);
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
User user = userMapper.queryUserById(1l);
System.out.println(user);
}
}
首先是读取mybatis-config.xml配置文件,获取配置文件的输入流,然后通过SqlSessionFactoryBuilder类的b