MyBatisPlus的通用查询,简直可以丢弃Dao和mapper.xml了
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | /** * * @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.getPageIndex(), dispatchPageParam.getPageSize()); EntityWrapper<Rep_DisPatch> eWrapper = new EntityWrapper<>(dispatchPageParam.getObj()); Page<Rep_DisPatch> ret = selectPage(page, eWrapper); return ret; } } |
此处ServiceImpl,是myBatisPlus提供的一个基类。
1 | DispatchPageParam 是自己写的一个查询参数的封装<br><br> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | /** * 基础分页参数 * @author shenjing * @date 2018/6/20 */ public class BasePageParam<T> { T obj; int pageIndex; int pageSize; public T getObj() { return obj; } public void setObj(T obj) { this .obj = obj; } public int getPageIndex() { return pageIndex; } public void setPageIndex( int pageIndex) { this .pageIndex = pageIndex; } public int getPageSize() { return pageSize; } public void setPageSize( int pageSize) { this .pageSize = pageSize; } } |
实际上这个里面什么都没有,只要继承基类就可以了
1 2 3 4 5 6 | /** * Created by shenjing on 2018/6/20. */ public class DispatchPageParam extends BasePageParam<Rep_DisPatch> { } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!