您的位置:首页 > 编程语言 > Java开发

Spring Boot: 开发web 应用 - 04 (Optional) Web MVC - Look Under The Hood

2017-06-21 16:41 906 查看

参考文章

Developing Web Application

Using Spring Boot Auto-configuration

Spring Boot 自动配置

Spring Boot自动配置尝试根据您添加的jar依赖关系自动配置您的Spring应用程序。大部分情况下,Spring Boot的 AutoConfiguration类会利用@ConditionalOnClass 或者其他的@ConditionalOn** 注解来有选择地配置你的应用。

比如: 在目前我们都还未加入security相关的依赖;SpringBootWebSecurityConfiguration 类实际已经引入, 但是
@ConditionalOnClass({ EnableWebSecurity.class, AuthenticationEntryPoint.class })
决定了security的依赖被引入之前SpringBootWebSecurityConfiguration 不会有任何作用。

#### WebMvcAutoConfiguration 类

此类作为webmvc的配置的集合点,下面的部分子类分别实现/扩展了spring-webmvc模块的类帮助SB(Spring Boot)Web 应用快速配置。



WebMvcConfigurerAdapter 集合了大部分webmvc的配置;后面涉及到的时候我们会尝试定制。

EnableWebMvcConfiguration @EnableWebMvc注解的替代

上一节的配置如何生效的

相关properties类: WebMvcProperties ResourceProperties

spring.mvc.static-path-pattern=/static/** 及spring.resources.cache-period=31536000 参考如下:

void org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration.WebMvcAutoConfigurationAdapter.addResourceHandlers(ResourceHandlerRegistry registry)


spring.resources.chain.* 的配置参考如下:

void org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration.ResourceChainResourceHandlerRegistrationCustomizer.configureResourceChain(Chain properties, ResourceChainRegistration chain)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息