时间:2021-05-20
1. 参数为String时的插值问题
假设有下面一Dao接口方法
public Account findByAccountType (String type)throws DaoException;对应的Mapper.xml
<select id="findByAccountType " parameterType="string" resultType="account"> select * form account <where> <if test ="type != null"> type=#{type} </if> </where></select>一般我们都是按这样的方式来写的,对于其他类型是没错的,但是如果为String的话会抛下面的异常:
There is no getter for property named 'type ' in 'class java.lang.String'
因为MyBatis要求如果参数为String的话,不管接口方法的形参是什么,在Mapper.xml中引用时需要改变为_parameter才能识别 :
<select id="findByAccountType " parameterType="string" resultType="account"> select * form account <where> <if test ="_parameter!= null"> type=#{_parameter} </if> </where></select>2. 对字符串参数进行是否相等 比较时的问题
错误:
<if test="_parameter == '1' "> type=#{_parameter}</if>正确:
<if test='_parameter == "1" '> type=#{_parameter}</if><if test="_parameter == '1'.toString() "> type=#{_parameter}</if>注:上述问题不仅限于<if>标签,其他动态sql标签在对String进行处理时也会出现同样的问题。
以上所述是小编给大家介绍的MyBatis 参数类型为String时常见问题及解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
接下来为大家介绍的是ios6.1.3/6.1.4/6.1.5完美越狱常见问题及解决方法汇总,ios6.1.3-6.1.5完美越狱各版本的完美越狱已经全部放出
问题1常见问题1.需要传入后台的为string类型但是使用swagger-ui接口进行测试的时候,输入的为数字类型,建议对pom.xml文件进行调整io.spr
在MyBatis学习初期,当parameterType的值为String也就是接收String类型的参数时,我会通过value来接,如图:通过value接收St
列举了一些常见,新手经常问的问题。举例并说明解决方法。1.超链接访问过后hover样式就不出现的问题web标准常见问题大全web标准常见问题大全web标准常见问
iphone6/plus常见问题及解决方法汇总来啦!苹果推出iPhone6及iPhone6Plus也有一段时间了,取得的效果也有目共睹,下文哥整理了ipho