重生之我在地球Online学JAVA day12
1、在进行mybatis操作时,实体类属性名和数据库表查询返回的字段名不一致会导致获取数据为null,此时就需要进行数据封装操作(三种方法):
(1)起别名:在SQL语句中,对不一样的列名起别名,别名和实体类属性名一样。
(2)手动结果映射:通过 @Results及@Result 进行手动结果映射。
(3)开启驼峰命名:如果字段名与属性名符合驼峰命名规则,mybatis会自动通过驼峰命名规则映射。
2、XML映射文件规范:
XML映射文件的名称与Mapper接口名称一致,并且将XML映射文件和Mapper接口放置在相同包下(同包同名)。
XML映射文件的namespace属性为Mapper接口全限定名一致。
XML映射文件中sql语句的id与Mapper 接口中的方法名一致,并保持返回类型一致。
3、动态SQL
(1)< if>标签
用于判断条件是否成立,如果条件为true,则拼接SQL。
形式:< if test="name != null">…< /if>
(2)< where>标签
where 元素只会在子元素有内容的情况下才插入where子句,而且会自动去除子句的开头的AND 或OR
(3)< set>标签
动态地在行首插入 SET 关键字,并会删掉额外的逗号。(用在update语句中)
(4)< foreach>标签
collection:集合名称
item:集合遍历出来的元素/项
separator:每一次遍历使用的分隔符
open:遍历开始前拼接的片段
close:遍历结束后拼接的片段
评论
问答助学
相关内容
0个评论
全部评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
内容推荐
Day 29✅ 今天做了:Redis消息队列⏰ 明天计划:继续学消息队列
2
Day 17🧭行动:学习了Python最后一个知识点:异常处理🤓体会:Python 程序一旦发生异常,如果没有捕获处理,程序就会直接崩溃终止。使用"try-except"捕获异常,可以预先写好异常处理方案:比如打印友好提示、记录日志、释放资源,保证程序不会直接退出,还能继续运行。🧑💻代码:try:print("================================")# pri
2
Day1今天学习了java中if的使用
2
day 61今天来学校上课了,和教授谈了,可以接下RA工作,不过一周只能charge 10h, 工资很少,不过一个月600刀也勉强比没有好。今天的工作还没做完,最近在做知识库构造,Ui/UX上周就设计完,现在在做底座的建设今天也让Claude直接帮我把Neetcode150 题目+解题思路+代码给我整理了,我发现我真的只有找碎片化时间才能做题,我还不如先背先回忆(之前都做过)祝祖国母亲节日快乐,也
2
Day 1✅ 今天做了:⏰ 明天计划:📚 今日感悟:
0
