Mybatis中Integer类型的判断<if test=“status!= null and status!= ‘‘“>问题
mybatis 类型 and 判断 if null status test
2023-09-27 14:25:32 时间
Mybatis在进行<if test="
status!= null and
status!= ''">
判空操作时,如果status为0的时候,该判断条件的值为false,也就是说Mybatis此时把0作为null来进行判断的
此时就会出现问题,在查询状态是0的数据时,查询的是全部数据
解决办法:
将判断条件修改为:<if test="
status!= null
">
结论:
<if test="status != null">
中status为integer类型的,status=0的判断结果为true。<if test="status != null and status != ''">
中status为integer类型的,status=0的判断结果为false,mybatis把status看作string来进行判断。
相关文章
- mybatis+spring+struts2框架整合
- springboot:mybatis多数据源配置
- 详解 MyBatis 类型处理器,让你的代码更优雅!
- spring+myBatis 配置多数据源,切换数据源
- MyBatis里字段到枚举类型的转换/映射
- MyBatis 作用域和生命周期
- MyBatis入门学习教程-实现关联表查询
- MyBatis parameterType 几种入参类型
- Mybatis 中的转义字符
- spring boot + mybatis 访问 neo4j
- mybatis <where>、<set>、<trim>、<sql>、<foreach>标签的使用
- SpringBoot 使用yml配置 mybatis+pagehelper+druid+freemarker实例
- 基于mybatis的BaseDao及BaseService深度结合(转)
- mybatis由浅入深day01_6SqlMapConfig.xml(6.2settings全局参数配置_6.3typeAliases(类型别名)_6.4typeHandlers(类型处理器)_6.5mappers(映射配置))
- MyBatis动态传入表名
- mybatis中的缓存问题
- 字段与列类型映射不上时,怎么办?Mybatis-Plus类型处理器了解一下