源码分析
文章平均质量分 80
源码相关技术分析
Zerooooooooooooooooo
这个作者很懒,什么都没留下…
展开
-
Mybatis自定义插件实现
一、插件说明MyBatis 允许你在映射语句执行过程中的某一点进行拦截调用。默认情况下,MyBatis 允许使用插件来拦截的方法调用包括:Executor (update, query, flushStatements, commit, rollback, getTransaction, close, isClosed)ParameterHandler (getParameterObject, setParametersResultSetHandler (handleResultSets, han原创 2022-04-01 11:24:51 · 1157 阅读 · 0 评论 -
MyBatis原理解析
一、Mybatis架构图二、Mybatis核心解析1、Mybatis核心流程读取配置及mapper文件流程创建sqlSession流程执行语句流程2、Mybatis核心类SqlSessionFactoryBuilder:加载并解析配置SqlSession:创建执行sql的上下文环境MapperStatement:执行sql时的mapper文件的实体映射MapperProxy:具体执行sql的代理对象Executor:执行sql语句的执行器3、缓存机制MyBatis.原创 2022-03-30 17:34:15 · 783 阅读 · 0 评论 -
Spring源码编译
一、下载源码在github或者gitee上下载spring-framework的特定版本的源码,这里选择5.3.8版本,openjdk的版本为8以上。新版本用的是gradle 7,添加依赖的命令不熟悉,故使用gradle 6版本进行编译。spring源码地址二、配置仓库地址下载好源码之后,解压并修改build.gradle文件中的仓库地址,加快编译速度。编译仓库地址代码如下:repositories { maven{ url 'https://maven.aliyun.com/n原创 2022-03-29 18:25:19 · 980 阅读 · 0 评论 -
Spring之AOP详解
Spring之AOP详解一、概述放在最前边,Spring AOP官方文档,传送门:spring-aop。个人感觉官方文档就是最好的学习文档,上边有详细的说明和细节的解释。其中将OOP和AOP做了简单对比。OOP(Object-oriented Programming):面向对象编程,一切皆对象,最小单元为classAOP(Aspect-oriented Programming):面向切面编程,一切皆切面,最小单元为aspect1、何为AOP...原创 2020-06-05 16:40:09 · 184 阅读 · 0 评论 -
Spring中循环依赖
Spring中循环依赖一、造成原因在开发过程中,可能遇到的一个场景就是:在Bean A中通过构造器依赖了Bean B,而Bean B在构造器中也依赖了Bean A,这样Spring容器在实例化Bean的时候就会报一个循环依赖BeanCurrentlyInCreationException异常。如下:@Componentpublic class User { private String id; private String username; private Car car原创 2020-06-03 10:45:45 · 184 阅读 · 0 评论 -
BeanCreationException:Injection of autowired dependencies failed异常的解决思路
关于BeanCreationException:Injection of autowired dependencies failed异常的解决思路总结一下今天下午的研究成果,整合SSM项目时候,最后测试从库中查询数据报了一个这样的异常,很是让我头大,足足百度+stackoverflow了一下午,愣是没有研究出成果,最后快要吃饭的时候静下心来想一想,到底是哪里出了问题,从最开始的流程去想转载 2017-04-10 23:35:37 · 1444 阅读 · 2 评论