spring
文章平均质量分 77
spring及spring boot源码学习
pumpkin_pk
coder
展开
-
spring5/springboot2源码学习 -- HandlerMapping
概念根据请求找到对应的处理器Handler。另外,Handler总是会包装成一个HandlerExecutionChain实例,该实例可能会有一些HandlerInterceptor实例.DispatcherServlet总是会调用每个HandlerInterceptor的preHandle方法,如果所有的preHandle方法都返回true才会调用handler本身实现接口定义publi...原创 2019-12-12 00:12:05 · 317 阅读 · 0 评论 -
spring5/springboot2源码学习 -- spring mvc主题theme
spring theme原创 2019-12-14 01:33:07 · 177 阅读 · 1 评论 -
spring5/springboot2源码学习 -- spring mvc上传文件
概念web应用中,文件上传的功能的非常普遍。在spring mvc中,带有文件的request会是MultipartHttpServletRequest,上传的文件会抽象成MultipartFile对象,而上传的相关功能由MultipartResolver处理使用托spring boot的福,在spring boot的环境下,文件上传功能是开箱即用的,你啥都不用配置就可以直接用了@Post...原创 2019-12-10 21:58:08 · 145 阅读 · 0 评论 -
spring5/springboot2源码学习 -- spring mvc中的locale
spring 中的locale原创 2019-12-12 22:41:51 · 461 阅读 · 0 评论 -
spring5/springboot2源码学习 -- bean的创建
概念当spring解析完配置文件后,配置文件只是转换成了BeanDefinition,并不是具体的bean。如果想要得到一个具体的bean,还需要经过bean的实例化过程。用法还是借助分析xml文件加载时候的测试方法:@Testpublic void test(){ //创建一个实现了BeanDefinitionRegistry的BeanFactory实现 //DefaultLi...原创 2020-02-05 00:11:50 · 269 阅读 · 0 评论 -
spring5/springboot2源码学习 -- 自定义标签的解析
概念在spring的xml配置中,我们除了可以使用默认的beans标签外,还可以自己定义标签。其实spring自己内部的很多模块也是使用了自定义标签来实现功能的。还有一些别的比较知名的案例,比如:dubbo用法首先,随便定义一个想通过标签来配置的bean:public class CustomBean { private String name; //get set}自定义...原创 2020-02-04 21:22:12 · 344 阅读 · 0 评论 -
spring5/springboot2源码学习 -- MessageSource
概念在spring中,MessageSource接口用于抽象对信息的定义,相当于是信息的提供者。比如,在web系统中,我们经常定义ResourceBundle来处理国际化相关的文案下发。在spring中,把从消息标识转化为具体的字符串的这一过程,抽象成了MessageSource接口,使可以更方便的实现消息的参数化和国际化。类个层级结构先看看MessageSource的定义:public ...原创 2019-12-22 19:52:05 · 318 阅读 · 0 评论 -
spring5/springboot2源码学习 -- xml文件的解析
xml文件的解析原创 2019-12-22 18:54:59 · 995 阅读 · 0 评论 -
spring5/springboot2源码学习 -- xml文件的解析之默认标签的解析
xml文件的解析之bean标签的解析原创 2019-12-14 17:25:05 · 524 阅读 · 0 评论 -
spring5/springboot2源码学习 -- spring boot的SPI与spring.factories
概念spring boot启动的时候,就算你自己啥配置都没,它自己也会有很多已经配置好了的bean。我们知道在spring中,可以通过在xml中配置,或者通过@Component+@ComponentScan注解,或者通过@Configuration/@Bean注解来达到注册Bean到ApplicationContext中的效果,那这里你明明啥都没做,为啥已经有了这么多的bean了呢?答:sp...原创 2019-12-10 17:45:08 · 165 阅读 · 0 评论 -
spring5/springboot2源码学习 -- Environment及PropertySource相关
基本介绍Environment是spring中一个非常核心的接口,代表当前应用运行的环境。 可以分为两个方面:profiles:设置profilesproperties:查找属性配置接口定义public interface Environment extends PropertyResolver { String[] getActiveProfiles();...原创 2019-12-09 22:23:28 · 691 阅读 · 0 评论 -
spring5/springboot2源码学习 -- spring中对命令行参数的处理
概念就算不用spring,我们肯定也知道命令行参数。其实就算你不用java,你也应该知道命令行参数????在启动一个通过spring boot打的fatjar形式的Java程序时,我们可能用如下的命令去启动:java -Xmx6g -XX:SurvivorRatio=4 -Djava.net.preferIPv4Stack=true --spring.profiles.active=prod -j...原创 2019-12-09 20:58:23 · 220 阅读 · 0 评论 -
spring5/springboot2源码学习 -- spring中的事件机制
介绍spring内部实现了一套事件传播机制的,也是观察者模式的实现主要角色事件 在spring中一般就是ApplicationEvent对象(这是一个抽象类而不是接口)。spring中的常见事件: ApplicationContextEvent:抽象类,ApplicationContext相关的事件。具体实现有: ContextClosedEventContextRefr...原创 2018-02-28 23:42:24 · 498 阅读 · 0 评论 -
spring5/springboot2源码学习 -- ProtocolResolver
接口定义@FunctionalInterfacepublic interface ProtocolResolver { Resource resolve(String location, ResourceLoader resourceLoader);}作用可以用于自定义协议解析,比如spring就有一个 “classpath:”开头的特定协议(但是spring并不是...原创 2018-01-16 22:47:55 · 1246 阅读 · 2 评论 -
spring5/springboot2源码学习 -- BeanFactoryPostProcessor相关
这个东西是干嘛的可以用于自定义对BeanDefinition(而不是具体的bean)的修改,比如:PropertySourcesPlaceholderConfigurer就是用于解决类似@Value(“${…}”)这种占位符的 其实还可以添加BeanDefinition,大家可以思考一下spring啥时候需要添加BeanDefinition…BeanFactoryPostProces...原创 2018-01-24 11:50:21 · 251 阅读 · 0 评论 -
spring5/springboot2源码学习 -- Resource相关
常见用法public class Main4Resource { public static void main(String[] args) throws IOException { //当ResourceLoader用 ApplicationContext ac = new AnnotationConfigApplicationContext(...原创 2018-01-21 16:01:38 · 586 阅读 · 0 评论