mybatis的动态sql之if test的使用说明
参数为String,iftest读取该参数代码
SELECTMAX(DEPART_ID)FROMT_P_DEPART ANDDEPART_PID=#{departId,jdbcType=VARCHAR} ANDDEPART_PIDISNULL
参数为pojo,iftest读取该参数代码
select*fromshop shop.shopnamelike'%${shopCustomer.shopname}%' ANDshop.shopnameisnull
补充:关于mybatis中iftest的条件怎么写
1.mybatis中的iftest写法
1.1官方文档上对于if是这么写的
ANDtitlelike#{title}
参考官方文档:
实际项目中会有这种情况:页面上title字段输入某个值进行查询,手动将输入框中的值删除,然后再次查询,发现结果不正确,究其原因是应为title传入了空串""这样在mybatis配置文件中就会用空串进行查询,导致出现错误结果
1.2建议写法
ANDtitlelike#{title}
2.使用mybatis做修改时将字段置空
if中如果传入的参数如果为空,那么将不会执行if中的语句
解决办法:
updatetable where1=1andid=#{companyOrg.id} full_name=null, full_name=#{companyOrg.fullName}, level=null, level=null, level=#{companyOrg.level},
以上为个人经验,希望能给大家一个参考,也希望大家多多支持毛票票。如有错误或未考虑完全的地方,望不吝赐教。
热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短