动态参数,动态mybatisplus对象,查询数据

    @GetMapping("/test")
    public void test() {
        Class<UserInfo> entityClass = UserInfo.class;
        Class<UserInfoMapper> mapperClass = UserInfoMapper.class;

        UserInfoMapper userInfoMapper = SpringUtil.getBean(mapperClass);

        Map<String, Object> map1 = new HashMap<>();
        map1.put("name", "admin");
        map1.put("id", 1560500842811883521L);

        Map<String, SFunction<UserInfo, Object>> map = new HashMap<>();
        map.put("name", UserInfo::getUsername);
        map.put("id", UserInfo::getId);

        LambdaQueryWrapper lambdaQueryWrapper = Wrappers.lambdaQuery(entityClass);

        map.forEach((k, v) -> {
            Object o = map1.get(k);
            lambdaQueryWrapper.eq(Objects.nonNull(o), v, o);
        });

        List data = userInfoMapper.selectList(lambdaQueryWrapper);
        System.out.println(JSON.toJSONString(data));
    }

  

posted @ 2025-04-03 15:40  东峰叵,com  阅读(25)  评论(0)    收藏  举报