文章目录
- MyBatisX
- Mybatis带参方法
- 动态条件查询
- 多条件查询
- 多条件-动态条件查询
- if
- choose(when,otherwise)
- 添加
- 添加-主键返回
- 修改
- 修改全部字段
- 修改动态字段
- 删除
- MyBatis参数传递
- 多个参数
- 单个参数
- MyBatis注解完成增删改查
MyBatisX
pojo类中的属性名要和数据库中的一致才能实现mybatis的自动封装。解决方法:起别名
还可以通过sql片段来简化写法
也可以使用resultMap映射,这样更灵活
Mybatis带参方法
MyBatis有两种参数占位符
动态条件查询
多条件查询
使用@Param的注解来标注方法传递的哪个参数
也可以传递对象,自动获取对象中的getXX方法,前提是参数名称与属性名一致
也可以是一个map集合,使集合中键的名称与参数名称一致
多条件-动态条件查询
if
if标签的test属性为判断传入参数的值
使用1=1的恒等式来解决where和and连接的问题,
或者使用where标签来解决
choose(when,otherwise)
当使用where标签包裹时可以不写otherwise
添加
添加-主键返回
主键返回:是主键数据制动添加到传入的对象的属性中去
修改
修改全部字段
修改动态字段
删除
批量删除时,使用的是动态sql语句,使用foreach标签遍历ids数组里面的传入的参数
mybatis会将传入的数组自动封装成一个数组集合,键值默认为array,值为传入的数组
MyBatis参数传递
多个参数
当传入多个参数时,Mybatis将多个参数封装成一个map集合
默认对应键的名称为arg+数字和param+数字(String)
可以使用@Param注解,替换Map集合中默认的arg键名
单个参数
POJO类型:直接使用,属性名 和 参数占位名一致
Map类型:直接使用,键名 和 参数占位名一致
其他类型(int,String等):直接使用
结论:凡是封装成Map集合,都可以使用@Param注解,替换Map集合中默认的arg键名
MyBatis注解完成增删改查
就是通过注解的方式,将本该写在配置文件中的sql语句直接写在对应的抽象抽象方法上