使用mybatisplus进行条件构造时不再使用平常的new QueryWrapper而是使用lambdaQuery 这样可以规避使用字符串来进行编写代码 如下:
List<MessageStatus> rocketMqEntities = rocketMqRepository.selectList(
Wrappers.<MessageStatus>lambdaQuery().eq(MessageStatus::getStatus, MessageStatus.Status.PUSH_FAULT));
Optional可以规避空指针的情况(其实就是内部帮忙判断了而已)
简单的使用:
messageStatus.setRetryCount(Optional.ofNullable(messageStatus.getRetryCount()).orElse(0) + 1);
这里是如果为null会将messageStatus.getRetryCount()的值设置为0