由 Mybatis 源码畅谈软件设计(五):ResultMap 的循环引用
由图示可知,Mybatis 在处理循环引用时,会根据引用关系创建最外层对象,每遇到新的引用,都会创建新的对象,并将这些对象“存”起来,当遇到现有对象需要被引用时,则会从“缓存”中取,不断地回归处理引用关系,这和算法中“递归”的思想一致,接下来我们看一下源码中是如何处理的,我们直接看。ResultMap...
本文介绍了 Mybatis 如何通过递归和缓存机制处理 ResultMap 的循环引用,以权限表为例,展示了如何定义循环引用并映射到 Java 对象。重点在于缓存机制的应用,以避免重复创建对象,有效处理一对多和多对一关系。