![](https://img-blog.csdnimg.cn/2019092715111047.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
spring源码解析
spring源码解析
Nuan_Feng
蓝桥杯国赛一等奖。唯有志存千里,方能风行天下。
展开
-
BeanUtils.copyProperties为嘛Copy不了内部类?
@TOC今天内部类copy失败,但是封装List的却成功了。查看源码isAssignableFrom:rhsType表示是否是lhsType子类或子接口。isPrimitive:表示是否是基类,也就是不是内部类。这里内部类会失败,主要是因为这二个条件判断失败。但是List包装的成功,是因为编译后泛型擦除,导致实际比较的是ArrayList类,所以这里直接返回true。...原创 2021-09-07 20:35:38 · 1184 阅读 · 0 评论 -
spring源码解析之部署web项目常见问题
有些类会找不到,可能是频繁切换分支造成的。清除缓存即可。第一步下载kotlin插件第二步添加相关依赖第三步这个时候会出现Kotlin: Language version 1.1 is no longer supported; please, use version 1.2 or greater.这个异常只需要设置kotlin版本即可然后修改项目版本即可facets也要对应的修改第四步部署tomcat时会失败这个问题是因为加载不到spring文件造成的。配置输出原创 2021-03-16 15:12:07 · 304 阅读 · 0 评论 -
spring源码解析之零
看了官方文档,官方推荐使用的ApplicationContext接口,它由BeanFactory接口派生而来,因而提供BeanFactory所有的功能。ApplicationContext以一种更向面向框架的方式工作以及对上下文进行分层和实现继承,ApplicationContext包还提供了以下的功能: • MessageSource, 提供国际化的消息访问 • 资源访问,如URL和原创 2017-04-16 11:03:59 · 509 阅读 · 0 评论 -
spring5.1.x源码解析之十三(常见问题)
spring如何实现标签功能扩展的?spring在解析doc的时候,会创建一个ReaderContext对象ReaderContext对象创建的时候,会创建NamespaceHandlerResolver对象在进行对象解析的时候,会分别解析默认命名空间和自定义的解析,也就是beans标签和非beans标签的解析 /* 获取所有已经配置的handler映射,读取配置文件 根据命名空间找到对应的信息 当是类的时候说明,已经做过解析直接缓存读取,直接返回 没有做过解析,返回类路径 判原创 2020-06-29 23:39:06 · 229 阅读 · 0 评论 -
spring5.1.x源码解析之十三(spring自动注入)
吃饭去咯原创 2020-04-29 19:45:21 · 204 阅读 · 0 评论 -
spring5.1.x源码解析之十二(列出10大设计模式)
责任链模式org.springframework.aop.framework.CglibAopProxy.DynamicAdvisedInterceptor#interceptpublic Object intercept(Object proxy, Method method, Object[] args, MethodProxy methodProxy) throws Throwable ...原创 2020-04-29 19:42:53 · 273 阅读 · 0 评论 -
spring5.1.x源码解析之十一(spring-activeMQ)
demopackage org.example.activemq.test;import org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;public class Receiver { public static void main(String[] args) throws Exceptio...原创 2020-04-29 18:45:20 · 214 阅读 · 0 评论 -
spring5.1.x源码解析之十(spring-rmi)
RMI demopackage org.example.rmi.test;import java.rmi.*;public interface MyRemote extends Remote { public String sayHello() throws RemoteException;}package org.example.rmi.test;import java....原创 2020-04-29 13:21:03 · 194 阅读 · 1 评论 -
spring5.1.x源码解析之九(spring-mvc)
配置文件web.xml<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocati...原创 2020-04-28 00:17:39 · 296 阅读 · 0 评论 -
spring5.1.x源码解析之八(事务处理)
有点意思原创 2020-04-26 13:24:35 · 227 阅读 · 0 评论 -
spring5.1.x源码解析之七(spring-mybatis)
写累了,我躺一下原创 2020-04-25 12:57:33 · 213 阅读 · 0 评论 -
spring5.1.x源码解析之六(JDBC)
spring对JDBC只是进行了简单的封装,主要大范围利用回调函数解耦,相对来说灵活性也比较高.但没有针对数据库一些特性进行处理配置文件<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http:...原创 2020-04-25 12:51:22 · 376 阅读 · 0 评论 -
spring5.1.x源码解析之五(AOP)
吃饭去咯原创 2020-04-24 13:52:58 · 292 阅读 · 1 评论 -
spring5.1.x源码解析之四(自定义属性编辑器执行逻辑)
//registerBeanPostProcessors会注册所有自定义编辑器,对应AbstractBeanFactory.customEditors //AbstractBeanFactory.initBeanWrapper会使用编辑器,对应AbstractBeanFactory.propertyEditorRegistrars 抽空写完...原创 2020-04-23 18:54:53 · 207 阅读 · 0 评论 -
spring5.1.x源码解析之三(new ApplicationContext())
= =原创 2020-04-23 10:42:02 · 385 阅读 · 0 评论 -
spring5.1.x源码解析之一(new XmlBeanFactory())
/* 这里分别使用 装饰者模式:使用EncodedResource包装Resource,对编码进行处理 策略模式:Resource针对不同的资源实现了,实现了不同的策略 */ @Override public int loadBeanDefinitions(Resource resource) throws BeanDefinitionStoreException { r...原创 2020-04-22 18:59:28 · 282 阅读 · 0 评论 -
spring5.1.x源码解析之二(XmlBeanFactory#getBean)
/* 缓存中获取值 工厂bean和普通bean的实际获取 没有的话创建对象 如果正在创建则异常,后续进行非单例的对象创建的时候会设置创建中 从父BeanFactory获取 标记正在创建或已经创建完成 合并父类相关属性到beanDefinition 判断是否是抽象类 依赖校验 注册依赖关系 提前初始化依赖的对象 创建单例对象 ...原创 2020-04-21 22:45:45 · 198 阅读 · 0 评论