mybatis-plus(后面简称为mp)是mybatis的增强版,官方称之为 “ 只做增强,不做修改 ”。mp将一些简单的sql语句进行了封装和自动生成,提高了效率,但是降低了性能。

那么,用mybatis可以自己写sql,查询语句可以自由发挥,比如可以只查询表中的部分字段,对于mp也有两种针对此种需求的方法,下面就来介绍:
方法1:只需要查询出name和phone两个字段:使用queryWrapper的select()方法指定要查询的字段

@RequestMapping("/selectByWrapper1")
    public List<SysUser> selectByWrapper1(){
        QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
        queryWrapper.select("username");//指定查询某字段
        List<SysUser> sysUsers=sysUserService.list(queryWrapper);
        return sysUsers;
    }

方法2:查询出除age和address外其它所有字段的数据:同样使用queryWrapper的select()方法

@RequestMapping("/selectByWrapper2")
    public List<SysUser> selectByWrapper2(){
        QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
        queryWrapper.select(SysUser.class, info ->!info.getColumn().equals("id") && !info.getColumn().equals("email"));//查询指定某字段以外的数据
        List<SysUser> sysUsers=sysUserService.list(queryWrapper);
        return sysUsers;
    }

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐