SSM项目从零开始到入门009-使用mybatis提供的动态代理
2017-12-15 13:56
344 查看
使用mybatis提供的动态代理
本节介绍mybatis的动态代理,回顾前面我们的crud操作,整个执行过程大致为
首先有个关于实体的dao接口,
然后是dao接口接口的实现类,
实现类然后在调用sqlsession去完成crud的操作
于是mybatis为我们提供的动态代理实现类就出场了
为了规范,我们将UserDao 接口命名为UserMapper.java并在测试类添加代理
但是写成这样要注意几点
UserMapper.xml文件中namespace必须写成全路径。这样才可以找到mapper文件并执行内容
然后UserMapper.java接口中的每一个方法必须与UserMapper.xml中的id对应 即名称一致
Mapper接口中的方法输入参数类型与sql定义的paramterType一致
Mapper接口中的方法输出参数类型与sql定义的resultType一致
测试添加操作,程序执行成功
本节介绍mybatis的动态代理,回顾前面我们的crud操作,整个执行过程大致为
首先有个关于实体的dao接口,
然后是dao接口接口的实现类,
实现类然后在调用sqlsession去完成crud的操作
public class UserDaoImpl implements UserDao{ private SqlSession sqlSession; public UserDaoImpl(SqlSession sqlSession){ this.sqlSession = sqlSession; } @Override public void addUser(User user) { sqlSession.insert("UserMapper.addUser",user); } ... ...... }但是这样的写起来对代码有冗余,而且参数还会设计到强制类型转换问题
于是mybatis为我们提供的动态代理实现类就出场了
为了规范,我们将UserDao 接口命名为UserMapper.java并在测试类添加代理
但是写成这样要注意几点
UserMapper.xml文件中namespace必须写成全路径。这样才可以找到mapper文件并执行内容
然后UserMapper.java接口中的每一个方法必须与UserMapper.xml中的id对应 即名称一致
Mapper接口中的方法输入参数类型与sql定义的paramterType一致
Mapper接口中的方法输出参数类型与sql定义的resultType一致
测试添加操作,程序执行成功
相关文章推荐
- SSM项目从零开始到入门010-mybatis提供的动态代理实现过程探究
- SSM项目从零开始到入门014-mybatis的update介绍
- SSM项目从零开始到入门008-mybatis传递多个参数问题
- SSM项目从零开始到入门012-mybatis的select介绍
- SSM项目从零开始到入门005-创建第一个mybatis项目
- SSM项目从零开始到入门011-详解mybatis的XML 映射配置文件
- SSM项目从零开始到入门013-mybatis的insert介绍
- SSM项目从零开始到入门015-mybatis的delete介绍
- SSM项目从零开始到入门004-mybatis架构介绍
- SSM项目从零开始到入门006-为mybatis项目添加日志支持
- ssm项目使用Mybatis动态拼接sql语句,生成的sql中文全部显示为???的问题(配置文件sql语句中文解析问题)
- SSM项目从零开始到入门007-使用接口完成增删改查操作
- SSM项目从零开始到入门001.教程整体介绍
- SSM项目中使用mybatis insert返回数据ID的方法
- SSH与SSM学习之Spring13——动态代理之通知的使用
- SSM项目从零开始到入门002-创建第一个maven项目
- mybatis之入门到开发(四)之 Mapper动态代理方式
- SSM项目从零开始到入门003-maven集中定义依赖版本号
- Mybatis总结2使用动态代理 实现接口
- mybatis分页插件的使用(电商项目前端动态查询排序)