09 2020 档案
摘要:我们写一个UserMapper接口,Mybatis会为该接口创建一个MapperProxy对象。 @Test public void selectTest() { // 会话是一个级别的 ,不能跨线程 // 缓存// 对像 /** * 基于Mapper接口代理调用 */ UserMapper map
阅读全文
摘要:一:动态代理介绍 1、增强型代理 (1)⽤户画像,收集⽤户⾏为⽇志⽤户画像,需要收集"登陆"、"下单"、"评论"、"退货"等⾏为⽇志。然后在通过⼤数据引擎进⾏分析画像。我们不能为每⼀个⽅法,增加采集⽇志。⼯作量实在是太⼤了。这时就可以给这些⽅法进⾏“代理开光”,好处是核⼼功能不变,增加附加功能,并保
阅读全文
摘要:懒加载&嵌套映射 前言: 基于动态代理实现懒加载,在使用过程中,如果会话关闭、跨线程、序列化等情况下,是否能够继续加载? 懒加载 懒加载是为改善,解析对象属性时大量的嵌套子查询的并发问题。设置懒加载后,只有在使用指定属性时才会加载,从而分散SQL请求。 <resultMap id="blogMap"
阅读全文
摘要:结果集映射体系一 前言 本章你将学会MetaObject的使用与原理,以及嵌套子查询原理,包括子查询当中的循环依赖 映射工具MetaObject 所谓映射是指结果集中的列填充至JAVA Bean属性。这就必须用到反射,而Bean的属性 多种多样的有普通属性、对象、集合、Map都有可能。为了更加方便的
阅读全文
摘要:1、StatementHandler 组件和其他组件之间的调用关系。 MyBatis一个基于JDBC的Dao框架,MyBatis把所有跟JDBC相关的操作全部都放到了StatementHandler中。 一个SQL请求会经过会话,然后是执行器,最由StatementHandler执行jdbc最终到达
阅读全文