
Java架构师(四)源码分析
文章平均质量分 87
手写Spring事务、注解、IOC容器、MCV、数据库连接池,Mybatis注解版本、List接口、链表、HasMap。
通过手写实现,更加深入的了解Spring的底层实现
无休止符
不要让任何事情,成为你不去学习的理由!!!
展开
-
七、自定义实现List框架
目录前言一、数组扩容技术二、自定义实现List前言本文先介绍数组扩容技术,因为在自定义实现List框架的时候需要用到一、数组扩容技术1.Arrays.copyOfArrays的copyOf()方法Arrays.copyOf功能是实现数组的复制,返回复制后的数组。参数是被复制的数组和复制的长度,不会影响原来的数组。copyOf()的第二个自变量指定要建立的新数组长度,如果新数组的长度超过原数组的长度,则保留数组默认值 public static void main( Stri原创 2022-03-21 21:44:41 · 296 阅读 · 0 评论 -
六、Mybatis-ORM原理
目录一、Mybatis主要构件二、工具类三、手写Mybatis1、Pom依赖2、注解创建3、aop实现拦截mapper接口4、测试类一、Mybatis主要构件1.ExecutorMyBatis执行器,是MyBatis 调度的核心,负责SQL语句的生成和查询缓存的维护2.StatementHandler封装了JDBC Statement操作,负责对JDBC statement 的操作,如设置参数、将Statement结果集转换成List集合3.ParameterHandler负责原创 2022-03-21 16:49:36 · 1079 阅读 · 0 评论 -
五、数据库连接池原理
目录一、数据库连接池二、数据库连接池实现原理三、数据库连接池实现一、数据库连接池1.数据库连接池概念在内部对象池中,维护一定数量的数据库连接,并对外暴露数据库连接的获取和返回方法如外部使用者可通过getConnection方法获取数据库连接,使用完毕后再通过releaseConnection方法将连接返回,注意此时的连接并没有关闭,而是由连接池管理器回收,并为下一次使用做好准备2.数据库连接池作用①资源重用:由于数据库连接得到重用,避免了频繁创建、释放连接引起的大量性能开销。在原创 2022-03-21 12:03:10 · 342 阅读 · 0 评论 -
四、SpringMVC框架原理
目录前言一、SpringMVC原理二、Servlet前言本篇文章先回顾下SpringMVC的原理,然后实现如下三个目标手写实现SpringMVC控制框架手写实现SpringMVC的@Controller注解手写实现SpringMVC的@RequesMapping注解一、SpringMVC原理SpringMVC是基于Servlet实现的⑴ 用户发送请求至前端控制器DispatcherServlet⑵ DispatcherServlet收到请求调用HandlerMapping原创 2022-03-20 22:02:57 · 161 阅读 · 0 评论 -
三、SpringIOC容器框架
目录前言一、SpringIOC介绍二、Spring原生XML实现IOC三、dom4j解析xml四、手写SpringIOC-XML注入对象五、手写SpringIOC-注解注入对象六、手写SpringIOC-依赖注入前言本篇先介绍通过使用SpringIOC的XML和注解的方式来实现对象注入然后我们使用手写的方式,自定义XML和注解的方式来实现IOC对象注入最后再通过手写实现SpringIOC的依赖注入通过手写的方式,让我们加深对SpringIOC的理解和思想一、SpringIOC介绍IOC:原创 2022-03-19 17:07:18 · 492 阅读 · 0 评论 -
二、Spring注解事务原理
目录前言:一、Spring注解事务二、JDK注解三、自定义注解前言:本篇先介绍Srping注解事务的使用其次介绍下JDK中注解以及自定义注解的使用最后手动编写代码实现Spring注解事务并解决线程安全问题一、Spring注解事务1.pom依赖 <dependencies> <!-- 引入Spring-AOP等相关Jar --> <dependency> <groupId>org.springframework</gro原创 2022-03-18 17:55:21 · 506 阅读 · 0 评论 -
一、Spring事务框架
目录一、Spring事务二、AOP三、静态代理四、动态代理设计模式一、Spring事务Spring事务是基于AOP环绕通知和异常通知实现的Spring事务:编程式事务、声明式事务Spring事务底层:使用编程式事务+AOP技术进行包装的=声明式事务二、AOPAOP概念:Aspect Oriented Programming面向切面编程,解决代码复用问题AOP底层实现原理:代理设计模式为什么要使用AOP技术:代码复用、解耦AOP的主要应用:日志记录,性能统计,安全控制,事务处理,异常处原创 2022-03-17 15:47:52 · 376 阅读 · 0 评论