Mybatis类型转换BUG

案例:mybatis框架的使用中是否遇到过前台传入数据后mybatis后台并不执行sql的情况呢?

比如:前台传入一个状态var flag //空字符,0,1

然后你用int接收,到mybatis框架后做了这样的判断

select id,name,flag from user where 1=1
<if test="param1!=null and param1!=''">
            and flag=#{param1}
        </if>

传入的int,数据库也是int类型,可debug出的sql数据就是不进if内部执行and操作,估计是test之后将数据作为string进行判断了,索性改成string后,问题解决。

我用的是mybatis3.2.5版本的,

有时间要多看看mybatis源码了,

你是否也遇到过这样的问题呢?

猜你喜欢

转载自www.cnblogs.com/q1359720840/p/10459919.html