Spring的其他源码分析
其他部分的源码分析
szhlcy
这个作者很懒,什么都没留下…
展开
-
spring源码------`@Schedule`跟`@Schedules`注解实现定时任务的原理
文章目录1.`@Scheduled`跟`@EnableScheduling`1.1 `@Scheduled`注解1.2 `@EnableScheduling`注解2 `@Scheduled`跟`@EnableScheduling`注解的解析2.1 `SchedulingConfiguration`1.@Scheduled跟@EnableScheduling1.1 @Scheduled注解 S...原创 2019-12-02 23:11:55 · 2796 阅读 · 0 评论 -
spring源码------@EnableAsync注解以及@Async注解如何配合完成方法异步调用的分析
文章目录1.`@EnableAsync`以及`@Async`的说明1.1 `@Async`1.2 `@EnableAsync`2. 源码分析2.1 基于`@Import`扩展的`AsyncConfigurationSelector`2.2 配置异步方法执行相关配置的`ProxyAsyncConfiguration`2.3 创建切点以及增强类的`AsyncAnnotationBeanPostProc...原创 2019-11-25 20:56:10 · 404 阅读 · 0 评论 -
spring源码------@Configuration跟@Component及其派生注解@Service等的区别以及spring对其代理增强的原理
文章目录1.常用的注解,以及`@Configuration`的特殊性2. `@Configuration`特殊性的源码解析2.1 贴有`@Configuration`的bean的获取2.1.1 bean注册前进行分类的方法`checkConfigurationClassCandidate`2.2 对bean进行增强2.2.1 获取需要代理增强的bean2.2.2 对bean进行代理增强2.2.3 ...原创 2019-11-21 16:16:38 · 1334 阅读 · 0 评论 -
spring源码------@EnableCaching,@Cacheable,@CacheEvict,@CachePut的实现原理
spring中原创 2019-11-17 17:36:15 · 1475 阅读 · 0 评论 -
spring源码------`@ComponentScans`,`@ComponentScan`注解解析以及spring5.0新特性META-INF/spring.components文件...
1.@ComponentScans,@ComponentScan作用 @ComponentScan这个注解作用大家应该都熟悉,这里的作用大家应该都知道。用来指定spring注册bean的时候需要扫描的包或者类,还可以指定我们定义的bean名称生成器,代理类型,扫描过滤器等与xml配置形式的<context:component-scan>标签作用一样。看看其中的元素就知道。@R...原创 2019-10-29 17:16:55 · 2420 阅读 · 0 评论 -
spring源码解析------@Import注解解析与ImportSelector,ImportBeanDefinitionRegistrar以及DeferredImportSelector区别
1.@Import注解在springBoot中间接的广泛应用 在springboot中并没有直接显式的使用@Import标签,而是通过@Import标签来间接的提供了很多自动配置的注解。比如@EnableAutoConfiguration,@EnableConfigurationProperties等。这些标签的实现都是通过使用@Import标签来完成的。......@Import(Auto...原创 2019-10-29 09:55:18 · 1732 阅读 · 0 评论 -
spring源码------@Conditional注解的解析Condition接口,以及springboot中的扩展
1.SpringBoot中的共同点 在springBoot中有很多这种标签@ConditionalOnXXX标签让springBoot的代码更加标签化配置更加灵活。这些标签都有共同点,这里例举两个标签的源码1.1``@ConditionalOnXXX`......@Conditional({OnClassCondition.class})public @interface Conditi...原创 2019-10-22 10:46:34 · 1079 阅读 · 0 评论 -
@Resource与@Autowired代码实现的区别以及,@PostConstruct,@PreDestroy标签的解析CommonAnnotationBeanPostProcessor
1.@Resource跟@Autowired @Resource标签在日常的Spring开发中跟@Autowired标签一样经常被用来注入对象用。虽然两者的作用一样,但是还是有区别的。这里简单说一下在注入时候区别1.使用上的区别1.@Resource@Resource装配顺序如果同时指定了name和type,则从Spring上下文中找到唯一匹配的bean进行装配,找不到则抛出异常如果...原创 2019-10-12 23:32:43 · 357 阅读 · 1 评论 -
Spring如何在Tomcat启动的时候启动的
在我们使用spring跟tomcat进行结合的时候,我们都会在Resources文件下创建一个webapp/WEB-INF文件夹下面创建一个web.xml文件,在这个文件中我们会添加这么几行配置 <listener> <listener-class> org.springframework.web.context.Context...原创 2019-04-12 14:08:40 · 572 阅读 · 0 评论 -
Spring源码----Spring的Bean生命周期流程图及代码解释
在网上已经有跟多Bean的生命周期的博客,但是很多都是基于比较老的版本了,最近吧整个流程化成了一个流程图。待会儿使用流程图,说明以及代码的形式来说明整个声明周期的流程。注意因为代码比较多,这里的流程图只画出了大概的流程,具体的可以深入代码1.获取Bean第一阶段获取Bean 这里的流程图的入口在AbstractBeanFactory类的doGetBean方法,这...原创 2019-09-26 11:42:25 · 734 阅读 · 0 评论 -
Spring源码-----@Autowired标签解析以及AutowiredAnnotationBeanPostProcessor
关于Autowired这是spring内部的自带的依赖注入的标签,可以用在构造函数、字段、setter方法或者配置方法上。作用是将我们需要注入的对象由Spring自动注入到目标对象中。Autowired标签的解析逻辑主要在AutowiredAnnotationBeanPostProcessor类中,而除了Autowired标签还有Value标签以及JSR-330规范的Inject标签的解析也在这...原创 2019-09-29 16:35:00 · 660 阅读 · 0 评论