1. Spring Boot提倡零配置,即无xml配置,但是在实际的项目种,可能有一些特殊要求你必须使用xml配置,这时我们可以通过spring 提供的@ImportResource来加载xml配置,例如
@ImportResource({"classpath:some-context.xml","classpath:another-context.xml"})
2.spring boot 的自动配置原理
Spring Boot在进行SpringApplication对象实例化时会加载META-INF/spring.factories文件,将该配置文件中的配置载入到Spring容器。
3.条件注解
@ConditionalOnBean :当容器里有指定的Bean的条件下
@ConditionalOnClass: 当类路径下有指定的类条件下
@ConditionalOnExpression: 基于SpEL表达式作为判断条件
@ConditionalOnJava: 基于JVM版本作为判断条件
@ConditionalOnJndi: 在JNDI存在的条件下查找指定的位置
@ConditionalOnMissingBean: 当容器里没有指定Bean的情况下
4.静态资源进入规则为/
Spring Boot的默认静态资源的路径为:
spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/
5.自定义消息转化器
自定义消息转化器,只需要在@Configuration的类中添加消息转化器的@bean加入到Spring容器,就会被Spring Boot自动加入到容器中。
@Bean
public StringHttpMessageConverter stringHttpMessageConverter(){
StringHttpMessageConverter converter = new StringHttpMessageConverter(Charset.forName("UTF-8"));
return converter;
}