| 网页左边,向下滑有目录索引,可以根据标题跳转到你想看的内容 |
|---|
普通的CRUD
如果还没有搭建MyBatis的环境,请参考上一节SSM框架之MyBatis的环境搭建https://blog.youkuaiyun.com/grd_java/article/details/104896816

-
2、增操作
首先在接口中添加一个方法,传入一个Ssm类对象作为参数

实体类中,我添加了一个有参构造(记住把无参构造补上),没有初始化id,因为我的数据库id字段自动增长
最后在mapper映射中添加insert标签,这里想要取到方法传来的值,可以使用#{属性名}的方式

-
3、改操作



-
4、删除



-
5、模糊查询






-
8、插入时获取id



-
9、级联查询(多表查询)
myBatis可以通过属性名.属性的形式调用级联属性,实现多对象查询



-
10、若实体类名和数据库列名不匹配怎么办
当不匹配时,会无法正确封装数据,这时可以将属性与字段的映射,用sql中起别名或者使用resultMap标签指定映射,直接起别名执行的效率高,使用resultMap开发效率高
动态sql
-
where和if标签(动态查询)
当我们想要实现,根据用户传入的不同条件,查找出相应数据,如果只传入id,就按id查,传入了姓名和密码,就按姓名和密码查,想要实现这些需要动态sql





-
set标签(动态修改)
当我们需要根据用户传入信息动态修改时,根据条件,可能会在结尾出现逗号,比如id=id,where,这样是错的,这时通过set标签解决



-
choose_when_otherwise(MyBatis中的whitch条件语句)
当我们想要实现满足某一个条件,就按照这个条件去查,其他条件就不在去看,或者所有条件都不满足,按照默认条件去查询时,就可以使用此表签




-
foreach
- 多条件查询



- 多条件插入(一次插入多条数据)



- 批量删除 delete from ssm where id in(?,?,?)
删除和查询一样,循环()里面内容即可 - 批量修改
update ssm set username=#{username}…where id=#{id};
修改需要重复循环这条语句,但是jdbc不支持将多个用分号结尾的语句拼接成一个,这时我们在驱动后面加一个参数即可
- 多条件查询
resultMap标签,自定义映射(用来完成多表,级联)








本文详细介绍了MyBatis框架下实现CRUD操作的方法,包括增删改查及复杂查询如模糊查询、级联查询等。同时,深入探讨了动态SQL的使用,如where、if、set、choose和foreach标签的应用,以及resultMap标签自定义映射的技巧。











417

被折叠的 条评论
为什么被折叠?



