Mybatis
芃蓉蓁蓁
这个作者很懒,什么都没留下…
展开
-
Mybatis中#和$的区别及应用
(一)#和$的区别#{}可以进行预编译处理,会被当成?号,调用PreparedStatement的set方法来赋值;可以防止sql注入;传入的参数在sql中被看成一个字符串,会对传入的数据自动加引号,例如:select id,name,age from user where id =#{id};当参数id传入的值是“1”时,上述sql解析为:select id,name,age from user where id =‘1’;${}不会进行预编译处理,是普通的占位符;不原创 2020-06-27 23:16:31 · 1148 阅读 · 0 评论 -
mybatis中if判断Long/Integer类型字段值等于0时的问题
当判断条件写成!=null并且!=’’,companyId传0时,会被过滤掉,执行的sql语句不会有and company_id = 0这个条件。<if test="companyId != null and companyId != ''"> and company_id = #{companyId}</if>解决方法:去掉!=’'的判断条件就可以了<if test="companyId != null"> and company_id = #{compa原创 2021-11-10 18:03:44 · 2083 阅读 · 0 评论