MyBatisPlus的通用查询,简直可以丢弃Dao和mapper.xml了

Posted JangoJing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MyBatisPlus的通用查询,简直可以丢弃Dao和mapper.xml了相关的知识,希望对你有一定的参考价值。

/**
 *
 * @author shenjing
 * @date 2018/6/20
 */
@Service
public class LocalDispatchServiceImpl extends ServiceImpl<Rep_DisPatchDao, Rep_DisPatch> implements LocalDispatchService {
    /**
     * 根据domain组合各种类型的查询,一般的查询就可以通过这个完成了,dao完全没有存在的意义了
     *
     * @param domain
     * @return
     */
    @Override
    public Rep_DisPatch findOneByDomain(Rep_DisPatch domain) {
        EntityWrapper<Rep_DisPatch> eWrapper = new EntityWrapper<>(domain);
        return selectOne(eWrapper);
    }

    /**
     * 根据分页参数进行查询
     *
     * @param dispatchPageParam
     * @return
     */
    @Override
    public Page<Rep_DisPatch> findListByPage(DispatchPageParam dispatchPageParam) {
        Page<Rep_DisPatch> page = new Page<>(dispatchPageParam.getStartIndex(), dispatchPageParam.getPageSize());
        EntityWrapper<Rep_DisPatch> eWrapper = new EntityWrapper<>(dispatchPageParam.getObj());
        Page<Rep_DisPatch> ret = selectPage(page, eWrapper);
        return ret;
    }

}

  此处ServiceImpl,是myBatisPlus提供的一个基类。

DispatchPageParam 是自己写的一个查询参数的封装

/**
 * 基础分页参数
 * @author shenjing
 * @date 2018/6/20
 */
public class BasePageParam<T> {
    T obj;

    int startIndex;

    int pageSize;

    public T getObj() {
        return obj;
    }

    public void setObj(T obj) {
        this.obj = obj;
    }

    public int getStartIndex() {
        return startIndex;
    }

    public void setStartIndex(int startIndex) {
        this.startIndex = startIndex;
    }

    public int getPageSize() {
        return pageSize;
    }

    public void setPageSize(int pageSize) {
        this.pageSize = pageSize;
    }
}

  实际上这个里面什么都没有,只要继承基类就可以了

/**
 * Created by shenjing on 2018/6/20.
 */
public class DispatchPageParam extends BasePageParam<Rep_DisPatch> {

}

  



以上是关于MyBatisPlus的通用查询,简直可以丢弃Dao和mapper.xml了的主要内容,如果未能解决你的问题,请参考以下文章

MybatisPlus 快速构建MybatisPlus 原生mybatis(分页查询) 通用枚举 service 封装 自动填充

[MyBatisPlus]通用Service接口&&测试通用Service

Spring-boot-mybatisPlus

Spring-boot-mybatisPlus

Spring-boot-mybatisPlus

Spring-boot-mybatisPlus