时间:2021-05-19
昨天实现一个功能,根据文章的id或者别名查找文章。
起初采用mybatis的Example进行查询,对参数artName进行判断,如果是纯数字就byId查询,否则就by别名。由于查询文章的同时,需要关联查询文章分类标签,所以选择采用select语句映射的方式查询,但又不想写两个查询方法,就使用了mybatis中动态sql。
mapper中定义了一个方法,有artName和byId两个参数,artName 表示id 或 别名,byId表示是否通过id查询。
对byId Boolean值进行判断时,出现false值无效的情况,在百度了一圈发现,普遍采用
这种方式,当byId=true时正常执行,但为false时不生效。后采用<choose>标签
byId本身是bool值,不用进行判断。
注意: byId不用加#{},不然false也会无效,如果加了#{}, 在与其他值进行比较时,
如: #{byId} == true 会报空指针错误,如果写成#{byId} == 'true' 会报Linkhashmap无法转换成String类型错误。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Mybatis的mapper.xml中update语句使用if标签判断对像属性是否为空值。UserDTO是传过来参数的类型,userDTO是在mapperDao
在条件判断时,离不开$True和$False,将其它类型转换成Bool类型时,有几点需要留意:其它类型转换成布尔类型PS>0,1,-1,'0','1','tru
hasattr(object,name)判断一个对象里面是否有name属性或者name方法,返回BOOL值,有name特性返回True,否则返回False。需要
前言众所周知在Python中常用的数据类型bool(布尔)类型的实例对象(值)就两个,真和假,分别用True和False表示。在if条件判断和while语句中经
mybatis的if判断里面最好不要使用boolean值:mybatis会默认把空值转为false。所以如果遇见前段传空值,这个字段在mybatis里面永远就是