Loading

摘要: 1 Spring 5源码下载 首先你的JDK需要升级到1.8以上版本。从Spring 3.0开始,Spring源码采用GitHub托管,不再提供官网下载链接。这里不做过多赘述,大家可自行去GitHub网站下载,我使用的版本下载链接为 https://github.com/spring-project 阅读全文
posted @ 2021-12-30 14:17 Tom弹架构 阅读(335) 评论(0) 推荐(0) 编辑
摘要: 本文节选自《Spring 5核心原理》 Spring IoC容器还有一些高级特性,如使用lazy-init属性对Bean预初始化、使用FactoryBean产生或者修饰Bean对象的生成、IoC容器在初始化Bean过程中使用BeanPostProcessor后置处理器对Bean声明周期事件进行管理等 阅读全文
posted @ 2021-12-25 15:38 Tom弹架构 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 本文节选自《Spring 5核心原理》 1 IoC与DI基本概念 IoC(Inversion of Control,控制反转)就是把原来代码里需要实现的对象创建、依赖,反转给容器来帮忙实现。我们需要创建一个容器,同时需要一种描述来让容器知道要创建的对象与对象的关系。这个描述最具体的表现就是我们所看到 阅读全文
posted @ 2021-12-24 13:50 Tom弹架构 阅读(472) 评论(0) 推荐(1) 编辑
摘要: 本文节选自《Spring 5核心原理》 1 什么是Spring MVC Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet。Spring MVC 角色划分清晰,分工明细。由于 Spring MVC 本身就是 Spring 阅读全文
posted @ 2021-12-22 13:33 Tom弹架构 阅读(937) 评论(0) 推荐(3) 编辑
摘要: 本文节选自《Spring 5核心原理》 阅读本文之前,请先阅读以下内容: 30个类手写Spring核心原理之自定义ORM(上)(6) 30个类手写Spring核心原理之自定义ORM(下)(7) 4 动态数据源切换的底层原理 这里简单介绍一下AbstractRoutingDataSource的基本原理 阅读全文
posted @ 2021-12-21 13:16 Tom弹架构 阅读(625) 评论(0) 推荐(1) 编辑
摘要: 1 事件背景 经过一周时间的Log4j2 RCE事件的发酵,事情也变也越来越复杂和有趣,就连 Log4j 官方紧急发布了 2.15.0 版本之后没有过多久,又发声明说 2.15.0 版本也没有完全解决问题,然后进而继续发布了 2.16.0 版本。大家都以为2.16.0是最终终结版本了,没想到才过多久 阅读全文
posted @ 2021-12-20 12:47 Tom弹架构 阅读(2395) 评论(4) 推荐(8) 编辑
摘要: 本文节选自《Spring 5核心原理》 3 基于Spring JDBC实现关键功能 3.1 ClassMappings ClassMappings主要定义基础的映射类型,代码如下: package com.tom.orm.framework; import java.lang.reflect.Fie 阅读全文
posted @ 2021-12-18 19:33 Tom弹架构 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 本文节选自《Spring 5核心原理》 1 实现思路概述 1.1 从ResultSet说起 说到ResultSet,有Java开发经验的“小伙伴”自然最熟悉不过了,不过我相信对于大多数人来说也算是“最熟悉的陌生人”。从ResultSet取值操作大家都会,比如: private static List 阅读全文
posted @ 2021-12-16 13:27 Tom弹架构 阅读(601) 评论(1) 推荐(2) 编辑
摘要: 背景 继前天正式发布的2.15.0之后,Apache log4j 2 团队宣布 Log4j 2.16.0 发布! 由于SLF4J适配兼容性的中断,Log4j 现在发布两个版本的SLF4J to Log4j的适配器。log4j-slf4j-impl对应 SLF4J 1.7.x 及更早版本;log4j- 阅读全文
posted @ 2021-12-15 16:07 Tom弹架构 阅读(2906) 评论(0) 推荐(4) 编辑
摘要: 本文节选自《Spring 5核心原理》 前面我们已经完成了Spring IoC、DI、MVC三大核心模块的功能,并保证了功能可用。接下来要完成Spring的另一个核心模块—AOP,这也是最难的部分。 1 基础配置 首先,在application.properties中增加如下自定义配置,作为Spri 阅读全文
posted @ 2021-12-14 13:41 Tom弹架构 阅读(736) 评论(0) 推荐(4) 编辑