MyBatis 进阶:运行原理、插件、自定义类型、Cache、级联

作者/分享人:阿福
向 Ta 提问
于电商行业的一家独角兽公司任职,专注于代码,热衷于分享

前一场 Chat 《MyBatis 基础入门》,我们概述了 MyBatis 的基础内容。本场 Chat,我们将关注 MyBatis 进阶的内容:

  1. MyBatis 运行原理
  2. 插件机制与示例
  3. 自定义类型处理器
  4. 使用 Cache
  5. 级联查询

通过本场 Chat,读者能够更好地于日常工作中实践 MyBatis。

已有247人预订
预订达标
文章出炉
交流日期
     
05月10日
05月24日
05月30日 20:30
查看文章评论/提问
小范
用mybaties如何避免oom异常,如果设置的话,在springboot里面,可以怎样设置
阿福: MyBatis 遇到的 OOM,通常不能认为是 MyBatis 的问题,更多的时候,OOM 是由于查询的结果集过大而引起的。 最快的解决方法,是配置 JVM 的运行参数,但却是有极限的。根本的解决办法,只能减少查询的结果集大小,例如:分页。 然而,分页之类的方法,可能会引入若干编程的复杂度,同时需要多次查询,多次网络开销,也是额外的成本。 推荐使用 “游标”,或者说 Cursor。Cursor 区分服务端及 “客户端”,MySQL 的服务端 Cursor,相对而言,实现并不理想,不建议使用。 “客户端” Cursor,本质而言,属于 “流式处理”,即:收到来自服务端的数据,立即处理。 MyBatis 允许通过自定义的 org.apache.ibatis.session.ResultHandler 支持 “客户端” Cursor,亦能够使用 Spring Batch。
你可能还喜欢
如何设计一个灵活的 MySQL 数据表,应对灵活多变的需求
李岩
Jenkins 自动化构建部署实战
火币集团研发中心
Java 程序员应掌握的 Nginx 实战应用
JPM
带你玩转 JSON
能量架构师
Python Pandas 做数据分析之玩转 Excel 报表分析
WinterLeo
小程序从入门到进阶
loonglong
微信扫描登录