Mybatisplus分页插件的使用

1、加maven依赖


       com.baomidou
       mybatis-plus
       ${mybatis-plus.version}

2、加配置


    
    
    
    

3、新建一个MybatisPlusConfig配置类文件

package com.szss.admin.config.mybatisplus;
 
import com.baomidou.mybatisplus.plugins.PaginationInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
 

@Configuration
@MapperScan("com.szss.admin.dao.*")
public class MybatisPlusConfig {
 
    /**
     * mybatis-plus分页插件
* 文档:http://mp.baomidou.com
*/ @Bean public PaginationInterceptor paginationInterceptor() { PaginationInterceptor paginationInterceptor = new PaginationInterceptor(); return paginationInterceptor; } }

4、Controller层代码

@PostMapping("/list")
    @ApiOperation(value = "查询列表")
    public R list(@RequestParam(value = "current", defaultValue = "1")int current,
                  @RequestParam(value = "size", defaultValue = "10")int size, SafeTrainEntity safeTrainEntity) {
        Page page = new Page(current, size);
       String title = safeTrainEntity.getTitle();
        String annexName = safeTrainEntity.getAnnexName();
        Wrapper wrapper = getWrapper(safeTrainEntity);
        if(title!=null){
            safeTrainEntity.setTitle(null);
            wrapper = getWrapper(safeTrainEntity);
            wrapper.like("title",title);
        }
        if(annexName!=null){
            safeTrainEntity.setAnnexName(null);
            wrapper = getWrapper(safeTrainEntity);
            wrapper.like("annex_name",annexName);
        }
        Page pageData = safeTrainService.selectPage(page, wrapper);
        R r = R.ok();
        r.put("data", pageData);
        return r;
    }

另一个版本写sql语句的

@PostMapping("/list")
    @ApiOperation(value = "查询列表")
    public R list(@RequestParam(value = "current", defaultValue = "1")int current,
                  @RequestParam(value = "size", defaultValue = "10")int size, SafeTrainEntity safeTrainEntity) {
        Page page = new Page(current, size); 
        Page pageData = safeTrainService.selectSafeTrainList(page,safeTrainEntity);
        R r = R.ok();
        r.put("data", pageData);
        return r;
    }

5、如果第二种就需要写service和mapper了

package com.as.service.safetrain;

import com.as.entity.safetrain.SafeTrainEntity;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import org.apache.ibatis.annotations.Param;

public interface SafeTrainService extends IService {
    Page selectSafeTrainList(Page page, @Param("safeTrainEntity") SafeTrainEntity safeTrainEntity);
}
package com.as.service.impl.safetrain;

import com.as.dao.safetrain.SafeTrainMapper;
import com.as.entity.safetrain.SafeTrainEntity;
import com.as.service.safetrain.SafeTrainService;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class SafeTrainServiceImpl extends ServiceImpl implements SafeTrainService {

    @Autowired
    private SafeTrainMapper safeTrainMapper;

    @Override
    public Page selectSafeTrainList(Page page, SafeTrainEntity safeTrainEntity) {
        List safeTrainEntities = safeTrainMapper.querySafeTrainList(page, safeTrainEntity);
        return page.setRecords(safeTrainEntities);
    }
}
package com.as.dao.safetrain;

import com.as.entity.safetrain.SafeTrainEntity;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.baomidou.mybatisplus.plugins.Page;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;


@Mapper
public interface SafeTrainMapper extends BaseMapper {

    List querySafeTrainList(Page page, @Param("safeTrainEntity") SafeTrainEntity safeTrainEntity);
}





    

 

你可能感兴趣的:(Mybatisplus分页插件的使用)