Mybatis配置环境注意事项
- IUserMapper在resource下目录结构必须与java下的IUser结构相同
- 映射配置文件的mapper标签namespace属性取值必须是dao接口的全限定类名
- 映射配置文件的操作配置(select)id属性值必须是dao接口的方法名
测试类:
- 读取配置对象
- 创建SqlSessionFactory工厂,调用SqlSessionFactoryBuilder().build();
- 使用SQLSessionFactory工厂生产一个SqlSession对象
- 使用SqlSession创建代理对象 sqlSession.getMapper(IUserDao.class)
- 使用代理对象执行方法
- 释放SqlSession资源和读取文件资源
// 读取配置文件
InputStream in = Resources.getResourceAsStream("MybatisConfig.xml");
// 创建SqlSession工厂
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
// 使用工厂生产SqlSession对象
SqlSession sqlSession = factory.openSession();
//使用SqlSession对象创建Dao的代理对象
IUserDao iUserDao = sqlSession.getMapper(IUserDao.class);
// 使用代理对象执行方法
List<User> users = iUserDao.findAll();
for (User user : users) {
System.out.println(user);
}
// 释放资源
sqlSession.close();
in.close();