mybatis關於Criteria的一點小坑。。。
阿新 • • 發佈:2020-07-03
目錄
在用Criteria時,相關程式碼如下:
final RolePermissionExample example = new RolePermissionExample();
example.createCriteria().andRoleIdEqualTo(roleId);
example.createCriteria().andProjectIdEqualTo(projectId);
List<RolePermission> rolePermissions = rolePermissionMapper.selectByExample(example);
後面發現只有第一個條件才生效,第二個是不生效的。
經調整,程式碼修改如下:
final RolePermissionExample example = new RolePermissionExample();
example.createCriteria().andRoleIdEqualTo(roleId).andProjectIdEqualTo(projectId);
List<RolePermission> rolePermissions = rolePermissionMapper.selectByExample(example);
經測試,功能正常!
我反正被這個坑慘了,我一直以為是mybatis快取的原因(導致我sql查詢模組始終只能匹配到第一個指定的Criteria規則欄位。。)