java ORM 神器 mybatis-mp,新框架、新设计、更好用!!!
官网 :https://mybatis-mp.cn
为什么推荐 mybatis-mp ?:
mybatis-mp 是一款超级强大的 ORM 框架
1:可多表 join(不再只能单表了)
2:良好 resultMap 结果映射能力(不怕映射错误了)
3:良好的扩展能力:orm+sql 模板 (让 ORM 框架不再死板,扩展性极强)
4:就算 xml 也不用再增加什么插件了,自带 xml 分页
5:强大的各种数据库适配,可在一套代码中 实现多个数据库适配;真正的 ORM hibernate 都做不到
6:极简的 api 设计,让开发者 不再迷糊
7:还很多很多独特优良的设计,只有前往体验,才能感受了;不相信可以试试!!!
1. 单表 +@Fetch 注解 + fetchFilter 方法
@Data @ResultEntity(SysUser.class) public class SysUserVo { private Integer id; private String userName; private String password; private Integer roleId; private LocalDateTime create_time; @Fetch(source = SysUser.class, property = "roleId", target = SysRole.class, targetProperty = "id") private List<SysRoleVo> sysRoles; }
List<SysUserVO> list = QueryChain.of(sysUserMapper) .from(SysUser.class) .fetchFilter(SysUserVO::getRoles,where->where.eq(SysRole::getStatus,1)) .returnType(SysUserVO.class) .list();
fetchFilter 方法是对 @Fetch 注解的增强,没有特殊要求一般,可忽略
2. 单表查询
SysUser sysUser = QueryChain.of(sysUserMapper) .eq(SysUser::getId, 1) .eq(SysUser::getUserName,'admin') .get();
3.VO 映射
@Data @ResultEntity(SysUser.class) public class SysUserVo { private Integer id; private String userName; //字段名字不一样时 @ResultEntityField(property = "password") private String pwd; }
SysUserVO sysUserVO = QueryChain.of(sysUserMapper) .eq(SysUser::getId, 1) .eq(SysUser::getUserName,'admin') .returnType(SysUserVO.class) .list();
4. join 查询
@Data @ResultEntity(SysUser.class) public class SysUserVo { private Integer id; private String userName; //字段名字不一样时 @ResultEntityField(property = "password") private String pwd; //映射一个对象 1对1 @NestedResultEntity(target = SysRole.class) prviate SysRole sysRole; //映射多个对象 1对多 @NestedResultEntity(target = SysRole.class) prviate List<SysRole> sysRoles; }
List<SysUserRoleVO> list = QueryChain.of(sysUserMapper) .from(SysUser.class) .join(SysUser.class, SysRole.class) .returnType(SysUserRoleVO.class) .list();
还有很多很多超级方便有趣的写法,欢迎大家来使用 https://mybatis-mp.cn
例如:
1 . 多表 join A 内嵌 B B 内嵌 C 都可以
2 . 不使用 join 使用 @Fetch 注解 + fetchFilter 方法实现 将 A JOIN B 变成 query A + query B
3 . 使用 @Paging 注解 实现你的 xml 自动分页
4 . 使用 SQL 模板,让你 ORM 更简单更容易扩展,再也不怕被框架限制了

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
DBErp 进销存系统 V1.2 Release 240914 发布
DBErp基于 Laminas+ doctrine2 开发的一套进销存系统。 系统框架 Laminas (Zendframework 3) Doctrine 2 环境要求 服务器系统Linux、Unix、Mac、Windows、其他 web 服务器Apache、Nginx、IIS、其他 MySQL 版本>= 5.6 PHP 版本>= 7.4 PHP 扩展 | 库 PDO SSL(openssl) Fileinfo intl Curl GD2 系统空间>= 500M 更新日志: 修正 采购订单自定义打印中的公司logo 优化 采购模块和销售模块加入时间检索(本次更新以后新添加的采购或者销售订单才可以时间检索) 优化 安装时,默认设置货币为人民币 优化 管理员添加备注信息 优化 系统中包含的ajax添加内容处理,加入权限控制 优化 插件管理 在线文档地址:https://docs.dberp.net/ 演示地址:https://demo.dberp.com.cn/ 下载地址:https://download.loongdom.com.cn/dberp/V1.2/DBErp...
- 下一篇
李飞飞创办的 World Labs 获 2.3 亿美元融资
被誉为“AI 教母”的斯坦福大学教授李飞飞已经为她的新创业公司 World Labs 筹集了 2.3 亿美元,投资者包括 Andreessen Horowitz、NEA 和 Radical Ventures。 科技媒体TechCrunch 曾在八月份报道,World Labs 的估值超过 10 亿美元,其融资是在几个月内分两轮融资完成的。World Labs 成立于今年 4 月,在四个月内就从创始公司成长为独角兽。 World Labs希望在 2025 年推出首款产品,旨在构建能够理解 3D 世界并与之互动的 AI 模型。World Labs 正在开发所谓的“large world models”,供艺术家、设计师、开发人员和工程师等专业人士使用。 Andreessen Horowitz 的普通合伙人 Martin Casado 透露,World Labs 的客户可能包括游戏公司或电影制片厂。
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Mario游戏-低调大师作品
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- 2048小游戏-低调大师作品
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Docker安装Oracle12C,快速搭建Oracle学习环境