Mybatis-plus条件构造器混用造成的问题

使用Mybatis-plus 条件构造器查询数据,如果感觉条件构造器是正确的,但是还是查不出来数据,一定要去控制台看看,构造的SQL是啥样的

例子:

public Object listPage(User user) {
    
    
   
    Page<User > page = getPage();
    EntityWrapper<User > entityWrapper = new EntityWrapper<User >(user);
    
    
    if (StringUtils.isNotEmpty(user.getName())) {
    
    
        entityWrapper.like("user_name", user.getName());
    }
   
    page = userService.selectPage(page, entityWrapper);
    return jsonPage(page);
}

问题:

这里前端传过来的name是用JavaBean User对象接收的,然后在下面构造条件查询器的时候将User这个对象当做条件放入条件构造器了
EntityWrapper<User > entityWrapper = new EntityWrapper<User >(user);
而在下面entityWrapper.like("title", learning.getTitle());这里又构造了个模糊查询的条件,最后导致SQL是这个样子
SELECT * FROM users WHERE user_name='%测试%' AND user_nameLIKE '%测试%' )

猜你喜欢

转载自blog.csdn.net/wyzyysw/article/details/115899732