springdata mybatis mini 版本 2.2.2 更新,简化 mybatis

栏目: 软件资讯 · 发布时间: 4年前

内容简介:github地址:https://github.com/VonChange/spring-data-mybatis-mini gitee 地址:https://gitee.com/vonchange/spring-data-mybatis-mini 更新日志 支持 LocalDateTime LocalDate LocalTime jdk8 的日期格式 更...

更新日志

  1. 支持 LocalDateTime LocalDate LocalTime jdk8 的日期格式
  2. 更改 jsqlparser 依赖,避免依赖冲突
  3. 简化动态 sql 方式,改为自定义的 ognl,提高性能,统一写法

特性

  1. 抛弃繁琐的 xml,只使用 mybatis 模版引擎即动态 sql 能力,sql 写在 markdown 文件里,便于书写和阅读
  2. 底层 jdbc 使用 spring jdbc
  3. 简化 mybatis 动态 sql 写法,比如:
{@and id in idList} 等于
<if test="null!=idList and idList.size>0"> and id in <foreach
collection="idList" index="index" item="item" open="(" separator=","
close=")">#{item}</foreach></if>

== 与 mybatis、mybatis-plus、jpa、hibernate 比较:

  1. sql 写在 markdown 文件里,写起来舒服,便于阅读
  2. 无需 resultType resultMap 复杂指定 (mybatis xml 啰嗦的配置),只需定义方法名
  3. 不允许查询 sql 放到 @Select 和 @Query 上,jpa 复杂,sql 不容易书写还乱(虽然也能实现),保持 mybatis 风格写在文件里,统一管理,便于维护
  4. 无缓存。缓存很容易,但更新是个难题,大多使用 mybatis 的公司都不会开启一级、二级缓存。使用不当容易引起脏读,不如使用 SpringCache 等上层方案,自己控制
  5. 不会像 jpa 根据方法名生成 sql (需要你学习思考,复杂点名字老长,不透明)
  6. 无 hibernate 条件构造器 (EntityWrapper,Criteria Query) 查询就该是 sql。配合动态 sql 能力,减少学习成本
  7. 由于markdown 文件表述能力,无法像 mybatis 那样使用 resultMap 可以关联结果集映射。我推荐的是如果没有复杂逻辑,多表 join 返回映射一个新的实体可直接透传到视图层 VO。或者自己代码里拼接,麻烦点但可控
  8. 比较大多是无的功能,但细想这些都不是必须的甚至鸡肋,老老实实简单简单做个纯粹的 ORM 框架

> 使用步骤基本同 jpa

1. 添加依赖 
2. @EnableMybatisMini
3. extends BaseRepository<UserBaseDO, Long> 或 extends
   BaseQueryRepository(只查询) 
4. 使用例子demo项目 spring-data-mybatis-mini-demo

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

突破之道

突破之道

(美)基思 R. 麦克法兰(Keith R. McFarland) / 江南、江维 / 机械工业出版社 / 2017-4 / 49.00

《从优秀到卓越》前传。 深入调查7000多家公司、1500多名关键管理人员,总结提炼出6大突破式发展策略。 解析创业成功后的公司如何腾飞,以几何速度增长,突破10亿关口。 阐述为什么创始人自己才是企业实现突破的最大障碍。一起来看看 《突破之道》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具