MabatiesPluse使用(二)使用IService接口、使用LambdaQueryWrapper构造条件

之前学习的MP是直接用接口继承BsmMapper extends BaseMapper < BsmBizAlarm > ,然后在ConTroller层直接使用,但是在实际项目中我们还是要把mapper层、Service层分清楚的。本篇文章旨在整理使用MP实现项目的流程


1、Mapper层

在mapper层定义。泛型对应的是需要操作的模型(pojo类,它对应的是数据库的表)。

public interface AlarmMapper extends BaseMapper<BsmBizAlarm> {
    
    
}

SerVice层

public interface BizAlarmService extends IService<BsmBizAlarm> {
    
    

}

Service.Impl层

@Service
public class BizAlarmServiceImpl extends ServiceImpl<AlarmMapper, BsmBizAlarm> implements BizAlarmService {
    
    
}

Controller层

 @Autowired
    BizAlarmService bizAlarmService;
    @PostMapping("/test")
    public PageResponse test1(@ApiParam() @RequestBody PageRequest<BizAlarmVo> pageRequest){
    
    
        BizAlarmVo bizAlarmVo = pageRequest.getParam();

        LambdaQueryWrapper<BsmBizAlarm> lqw = new LambdaQueryWrapper();
        // 根据警报时间排序
         lqw.orderByDesc(BsmBizAlarm::getAlarmTime);

          if(!StringUtils.isEmpty(bizAlarmVo.getAlarmTimes())){
    
    
              Date start = bizAlarmVo.getAlarmTimes().get(0);
              Date end = bizAlarmVo.getAlarmTimes().get(1);
              //大于  参数1 需要对比的column     DateUtil.getDayStartTime(start)是封装好的代码,自动把start携程Timestamp
              lqw.ge(BsmBizAlarm::getAlarmTime,DateUtil.getDayStartTime(start));
              lqw.le(BsmBizAlarm::getAlarmTime,DateUtil.getDayEndTime(end));
          }

        // 分页查询   根据自己定义的BsmPage接收参数,并构建page类
        IPage page = bizAlarmService.page(pageRequest.page(),lqw) ;

        return  PageResponse.succ(page);

    }

Guess you like

Origin blog.csdn.net/qq_36737214/article/details/118224782