异常背景
在Mapper文件中创建动态SQL时,对传入的字符串进行判空和判空串操作,代码如下:
<if test="#{arg2} != null and #{arg2} !='' " >
and ( book_name like ‘%’ #{arg2} ‘%’ or book_author like ‘%’ #{arg2} ‘%’ or book_type like ‘%’ #{arg2} ‘%’ or book_description like ‘%’ #{arg2} ‘%’ )
</if>
测试时报错
invalid comparison: java.util.LinkedHashMap and java.lang.String
解决方法
在if的test中,直接使用参数名,不用加#{}