最近项目开发中遇到一种查询条件为0的情况,但是过程一波三折,经过大佬提示得以解决,同时也发现了Mybatis对于参数0需要不同的处理。于是空闲后自己写了个例子测试一下。
以此记录,方便查找。
经测试得出:参数为Integer类型的0时,Mybtais会自动识别为‘’(空字符串)。
想要使Integer的0符合条件则应该去掉该判断,但是空字符的情况从而也会被忽略,这应该也是开发时应该注意的。
处理
第一种 就是根据上面测试结果将n!=‘’条件去掉。
第二种 将参数改为字符串类型,同样可以避免该问题,而且还不会漏判空字符串的情况