🔥※【mybatis-mp】一款真正/你错过的好用的 ORM 框架:1.6.9 正式发布【重要】!
官网 :https://mybatis-mp.cn
更新:
- 1:select as 功能增强
- 2:修复 mybatis xml 生成报错
- 3:优化代码生成器
- 4: 各个数据库适配优化
- 5:mysql 函数整理
- 6:增加 lombok @Buider @ToString 支持
为什么推荐 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业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Python 3.13.0 RC3 发布
Python 3.13.0 RC3 现已发布。公告称,除非发现任何严重错误,否则此版本预计将成为 3.13.0 的最终版本。3.13.0 的正式版本现定于 2024-10-07 星期一发布。 RC3 是一个计划外的候选版本,源于临时发现的几个问题。主要是由于增量循环垃圾收集器(在 alpha 版本中引入)导致特定工作负载的性能显著下降。项目团队决定在 3.13 中回滚垃圾收集器更改(并在 3.14 中继续改进它),应用许多其他重要的错误修复,并推出新的候选版本。 从现在开始,3.13 系列中将不会有任何 ABI 变化(自测试版发布以来也没有发生过任何变化)。 Python 3.13 中的一些主要新功能和变化包括: 新功能 基于PyPy的全新改进的交互式解释器,具有多行编辑和颜色支持,以及彩色异常回溯功能。 一种实验性的自由线程构建模式,可禁用 Global Interpreter Lock (全局解释器锁),允许线程更并发地运行,构建模式在 Windows 和 macOS 安装程序中也作为实验性功能提供。 初步的实验性 JIT,为显著的性能改进奠定了基础。 locals()内置函数...
- 下一篇
Hikyuu 2.2.1 发布,开源高性能量化交易框架
Hikyuu 是一款基于 C++/Python 的高性能开源量化交易研究框架,用于 A 股全市场快速策略分析及回测。与其他量化平台或回测软件相比,具备: 超快的数据加载与回测速度:A 股全市场(1913 万日 K 线)仅加载全部日线计算 20 日 MA 并求最后 MA 累积和,HDF5 存储首次执行边计算边数据加载 耗时 6 秒,数据加载完毕后计算耗时 166 毫秒 "; 针对系统交易理念进行组件化,实现真正的 “积木化” 积累 更多信息,参见: 项目主页: https://hikyuu.org gitee 地址:https://gitee.com/fasiondog/hikyuu github 地址:https://github.com/fasiondog/hikyuu hub 地址: https://gitee.com/fasiondog/hikyuu_hub 2.2.1 版本主要更新 该版本为紧急修复更新,影响 Strategy 运行时实盘信号发送,建议尽快更新 解决了历史老问题,优化 HikyuuTdx GUI 布局,支持缩放,以便低分辨率屏幕可以正常显示 具体更新如下: fi...
相关文章
文章评论
共有0条评论来说两句吧...