MyBatis-Plus Wrapper条件构造器筛选不必要的字段

一、引言

一天一眨眼就过去了,真是光阴似箭日月如梭呀。

这个MP的Wrapper默认查询是查询全部的列,但是小编的需求是需要查询某几个列即可。

当然MP也是提供了解决办法的。

二、解决办法

/**
     * 名字包含雨并且年龄小于40
     * <p>
     * 只显示id、name 两列
     */
    @Test
    public void selectByWrapper1() {
        QueryWrapper<User> wrapper = new QueryWrapper();
        wrapper.like("name", "雨").lt("age", 40)
            .select("id","name");
        List<User> users = userMapper.selectList(wrapper);
        users.forEach(System.out::println);
    }

    /**
     * 名字包含雨并且年龄小于40
     * <p>
     * 除了create_time、manager_id 其他列都显示
     */
    @Test
    public void selectByWrapper2() {
        QueryWrapper<User> wrapper = new QueryWrapper();
        wrapper.like("name", "雨").lt("age", 40)
                .select(User.class,i -> !i.getColumn().equals("create_time")
                && !i.getColumn().equals("manager_id"));
        List<User> users = userMapper.selectList(wrapper);
        users.forEach(System.out::println);
    }

 

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 终极编程指南 设计师:CSDN官方博客 返回首页
实付 29.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值