MyBatis框架下Dao层引入方式?
1. 修改mapper文件的 namespace, 对应接口类的全路径
2. 创建BookDao.java 接口类
3. 接口方法名对应mapper的SQL id
4. 定义反参和入参
MyBatis框架下Service层引入方式?
一个service就是一个事务。
1. 创建service, serviceImpl 结构包,对应BookService, BookServiceImpl
2. 获取连接
3. 代理功能
通过SqlSession的代理功能,调用Dao层接口方法
代理模式:
代理模式是常用的Java设计模式,就是客户端不直接调用实际的对象,而是通过代理对象来间接调用实际的对象,可以在不修改原目标对象的前提下,提供额外的功能操作,以此扩展目标对象的功能,通俗来讲就是我们生活中常见的中介。
Mybatis的执行顺序2:
1. 首先加载mybatis-config.xml总配置文件,根据development的参数配置连接数据库;查询mappers映射关系,找到mapper.xml配置文件
2. 执行mapper.xml文件,该文件记录了运行SQL
3. 在dao接口层,dao的方法名对应mapper.xml的ID
一个表 对应 一个实体 对应 一个mapper 对应 一个dao
4. 在service层,通过工具类获取连接;通过代理模式(反射)获取dao接口对象
5. 调用dao接口方法,执行SQL语句
6. 关闭SqlSession