- 博客(12)
- 收藏
- 关注
原创 springboot 自定义初始化器(基于META-INF/spring.factories文件)
目录示例原理示例基于META-INF/spring.factories设置ApplicationContextInitializer实现类来实现自定义初始化器1.创建一个TestInitializer 实现ApplicationContextInitializer,Ordered .一个是初始化器接口, 一个是排序./** * @Author: xc * @Date: 2020/6/14 */public class TestInitializer implements Applicati
2020-06-14 23:54:48
4063
1
原创 springboot 自定义初始化器 (基于DelegatingApplicationContextInitializer)
目录示例原理示例通过DelegatingApplicationContextInitializer类,来自定义实现初始化器.创建一个TestInitializer 实现ApplicationContextInitializer,Ordered 接口一个是初始化器接口, 一个是排序./** * @Author: xc * @Date: 2020/6/14 */public class TestInitializer implements ApplicationContextInitializ
2020-06-14 23:14:21
332
原创 SpringBoot源码分析之-启动流程分析四(prepareEnvironment 环境准备)
3.ConfigurableEnvironment environment = prepareEnvironment(listeners, applicationArguments); private ConfigurableEnvironment prepareEnvironment(SpringApplicationRunListeners listeners, ApplicationArguments applicationArguments) { // Create and config
2020-06-14 17:26:37
318
原创 阻塞队列 BlockingQueue
目录BlockingQueue介绍BlockingQueue接口结构实现类介绍ArrayBlockingQueueLinkedBlockingQueueLinkedBlockingDequePriorityBlockingQueueSynchronousQueueDelayQueueLinkedTransferQueue总结BlockingQueue介绍阻塞队列,并发安全(ReentrantLock),不能插入nullBlockingQueue接口结构定义了阻塞队列的几种插入和获取元素等方法
2020-06-13 23:38:47
246
原创 java基础-循环
循环方式简介while方式for方式退出循环的几种方式简介循环就是满足判断表达式就一直重复执行循环体, 就像绕操场跑步一圈一圈的跑不到规定的数不要停, 到终点又到起点开始.所以写死循环就是让 判断表达式每次都为true本篇主要讲java中循环的方式,和退出循环的方式java中有循环有两种方式1.while2.for退出循环的几种方式1.自然结束2.continue3.break4.异常5.return本篇的代码示例地址: github.while方式 @Test
2020-06-11 00:00:50
128
原创 SpringBoot源码分析之-启动流程分析三(监听器SpringApplicationRunListener)
目录前言观察者模式run方法中出现的地方前言上一篇SpringBoot源码分析之-启动流程分析二(run方法)简单分析了的run流程这一篇主要分析一下监听器 SpringApplicationRunListener观察者模式 class SpringApplicationRunListeners { //监听器集合 private final List<SpringApplicationRunListener> listeners; SpringApplicationRu
2020-06-09 00:40:56
242
1
原创 SpringBoot源码分析之-启动流程分析二(run方法步骤介绍)
目录前言run主要流程介绍简单方法介绍configureHeadlessProperty();getRunListeners()createApplicationContext()refreshContext(context);afterRefresh(context, applicationArguments);callRunners(context, applicationArguments);前言上一篇分析了SpringApplication的构造初始化,初始化主要设置加载类,项目类型(非web,
2020-06-08 00:18:56
329
原创 SpringBoot源码分析之-启动流程分析一(SpringApplication构造器)
目录简介springboot入口类SpringApplication类简单介绍流程主要方法介绍简介springboot入口类SpringApplication类run方法进去看到 public static ConfigurableApplicationContext run(Class<?> primarySource, String... args) { return run(new Class<?>[] { primarySource }, args); }
2020-06-07 19:21:11
629
2
原创 java基础-注解
目录简介元注解@Target@Retention@Document@Inhrited注解中的参数类型示例简介Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。Java 语言中的类、方法、变量、参数和包等都可以被标注。注解的生命周期有三种: 源码,class,运行时.元注解元注解的作用就是负责注解其他注解,java 有4个meta-annotation类型,用来提供annotation类型做说明。1.@Target2.@Retention3.@D
2020-06-06 17:08:15
174
原创 java基础-jdk动态代理
目录代理模式动态代理JDK动态代理示例总结代理模式首先了解一下什么是代理模式, 现在有个有个Job, 我想要在执行work前后加上日志,那么如果没有代理类的话,我们需要修改实现类中work方法,在方法第一行加个日志,最后返回前加个日志. 日志原本与work无有直接关系,却和work直接耦合在了一起, 这违反了开闭原则.代理模式通过一个代理类,代理类包含一个被代理对象,同样要加日志的话,只需要在代理类调用work方法前后加日志就行,而非修改work原有业务逻辑.代理模式结构图静态代理虽然解决了上诉
2020-06-06 16:35:07
114
原创 java基础-反射
目录前言反射相关类简介准备ClassFieldMethodConstructor总结前言JAVA反射机制是在运行状态中, 对于任意一个类, 都能够知道这个类的所有属性, 方法, 注解, 继承实现的信息,也就你想要的这里都有. 对于任意一个对象, 都能够调用它的任意方法和属性, 这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制.反射是学习框架源码之前必须掌握的知识!本篇主要是介绍api的使用在线文档.示例代码github.反射相关类简介类描述Class
2020-06-06 15:35:54
213
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人