首页 > 其他 > 详细

mybaits-plus 一些写法

时间:2021-08-02 15:12:35      阅读:20      评论:0      收藏:0      [点我收藏+]

1、不管condition是否满足,后面跟着的入参如果是表达式的都会去执行,所以要进行判空处理npe

1 lambdaQuery().setEntity(ObjectUtils.copy(param, EvaluationDO.class))
2                 .ge(Objects.nonNull(param.getRateGe()), EvaluationDO::getRate, Objects.isNull(param.getRateGe())? null: Math.toIntExact(EvaluationRateUtil.mul100(param.getRateGe())))

 

2、处理模糊查询,匹配两个字段

lambdaQuery().setEntity(qryDO)
                .in(!Objects.isNull(param.getIds()), CommunityPostDO::getId, param.getIds())
                .like(StringUtils.isNotBlank(param.getTitleLike()), CommunityPostDO::getTitle, param.getTitleLike())
                .and(StringUtils.isNotBlank(param.getKeywords()), (queryWrapper -> queryWrapper.like(CommunityPostDO::getTitle, param.getKeywords())
                        .or()
                        .like(CommunityPostDO::getContent, param.getKeywords())))
                .ge(Objects.nonNull(param.getPublishTimeStart()), CommunityPostDO::getGmtCreated, param.getPublishTimeStart())
                .le(Objects.nonNull(param.getPublishTimeEnd()), CommunityPostDO::getGmtCreated, param.getPublishTimeEnd())

 

3、排序

1 .orderByDesc(Objects.equals(CommunitySortTypeEnum.HOT.getType(), param.getSortType()) ?
2                         CommunityPostDO::getHot :
3                         Objects.equals(CommunitySortTypeEnum.LATEST.getType(), param.getSortType()) ?
4                                 CommunityPostDO::getGmtCreated :
5                                 CommunityPostDO::getGmtModified)

 

4、大于小于,ge/le

1 lambdaQuery().setEntity(qryDO)
2                 .ge(Objects.nonNull(param.getPublishTimeStart()), CommunityPostDO::getGmtCreated, param.getPublishTimeStart())
3                 .le(Objects.nonNull(param.getPublishTimeEnd()), CommunityPostDO::getGmtCreated, param.getPublishTimeEnd())

 

mybaits-plus 一些写法

原文:https://www.cnblogs.com/jijiecong/p/15089260.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!