Mybatis入门案例
第一步: 读取配置文件
InputStreamin=Resources.getResourceAsStream("SqlMapConfig.xml")
第二步: 创建SqlSessionFactory工厂
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder(); SqlSessionFactory factory = builder.build(in);
第三步: 使用工厂生产SqlSession对象
SqlSession session = factory.openSession();
第四步: 使用SqlSession创建Dao接口的代理对象
IUserDao userDao session.getMapper(IUserDao.class)
第五步: 使用代理对象执行方法
List<User> users = userDao.findAll();
for(User usr : users){
System.out.println(user);
}
第六步: 释放资源
session.close();
in.close();
注意事项: 不要忘记在映射配置中告知mybatis要封装到哪个实体类中,配置方式: 指定实体类的全限定类名
Mybatis基于注解的入门:
把IUserDao.xml移除,在dao接口的方法上使用@Select注解,并且指定SQL语句,同时需要在SqlMapConfig.xml中的mapper配置时,使用class属性指定dao接口的全限定类名.
明确一点: 我们在实际开发中,都是越简便越好,所以不管使用xml还是注解配置,都是采用不写dao实现类分方式.但是Mybatis它是支持写dao实现类的
自定义Mybatis的分析:
mybatis在使用代理dao的方式实现增删改查时做什么事?
1) 创建代理对象
2) 在代理对象中调用selectList