spring boot 2
Posted 千面鬼手大人
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring boot 2相关的知识,希望对你有一定的参考价值。
内嵌容器原理
内嵌容器--Tomcat
Tomcat.exe 运行java main
把servlet 注册到tomcat:
spring-boot-start-web
spring boot 把springMVC要做的 xml的配置DispatcherSevlet 字符乱码CharaterEncodingFliter ViewResolver视图解析器,文件上传解析器 那些。。。都不用配置了
而且只要是 主程序在的这个目录下所有的子包,都是可以自动扫描到的。
以往都要
现在是:
测试:
因为是代理对象
条件装备 @ConditionalOnBean(name = "") @ConditionalOnMissingBean(name = "")
如果xml配置了已经,可以 @ImportResource("classpath:beans.xml")
配置绑定
方法1:@Component + @ConfigurationProperties
方法2:@EnableConfigurationProperties在配置类中 + @ConfigurationProperties
自动配置的原理
防止有些用户配置的文件上传解析器不符合规范
@Bean
@ConditionalOnBean(MultipartResolver.class) //容器中有这个类型组件
@ConditionalOnMissingBean(name = DispatcherServlet.MULTIPART_RESOLVER_BEAN_NAME) //容器中没有这个名字 multipartResolver 的组件
public MultipartResolver multipartResolver(MultipartResolver resolver) {
//给@Bean标注的方法传入了对象参数,这个参数的值就会从容器中找。
//SpringMVC multipartResolver。防止有些用户配置的文件上传解析器不符合规范
// Detect if the user has created a MultipartResolver but named it incorrectly
return resolver;
}
给容器中加入了文件上传解析器;
响应式编程
java8 接口的默认实现,不用适配器adapter,可以直接默认实现。
@SpringBootApplication
SpringAppliction.run(M类.class, args);
@Controller
@ResquestMapping()
@ResponseBody 要以字符串的方式返回给浏览器,,,如果都 就放在类上,
@RestController = 替换了@Controller+@ResponseBody 放在类上,
自定义修改版本
以上是关于spring boot 2的主要内容,如果未能解决你的问题,请参考以下文章
一张图,理顺 Spring Boot应用在启动阶段执行代码的几种方式
一张图帮你记忆,Spring Boot 应用在启动阶段执行代码的几种方式
一张图,理顺 Spring Boot应用在启动阶段执行代码的几种方式