1 覆盖 Spring Boot 自动配置
这里有个不错的例子;项目对mvc请求的WebMvcConfigurerAdapter 请求的头信息进行重新设置
@SpringBootApplication
public class Application extends WebMvcConfigurerAdapter {
@Override
public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {
Map<String, MediaType> mediaTypes = new HashMap<>();
mediaTypes.put("json", MediaType.APPLICATION_JSON_UTF8);
mediaTypes.put("html", MediaType.TEXT_HTML);
configurer.favorPathExtension(false);
configurer.defaultContentType(MediaType.APPLICATION_JSON_UTF8);
configurer.ignoreAcceptHeader(true);
configurer.mediaTypes(mediaTypes);
}
}
2 通过属性文件外置配置
项目中引用是适用antx.properties,和Dimond配置读取定义的外部配置;
2.1 自动配置微调
禁用模板缓存
如果你希望每次运行时都禁用缓存,可以创建一个application.yml,包含以下内容:
spring:
thymeleaf:
cache: false
配置嵌入式服务器
server:
port: 8000
配置日志
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j</artifactId>
</dependency>
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/defaults.xml" />
<property name="APP_NAME" value="fin-ir-web" />
<property name="LOG_PATH" value="${user.home}/${APP_NAME}/logs" />
<property name="LOG_FILE" value="${LOG_PATH}/${APP_NAME}.log" />
<property name="CONSOLE_LOG_PATTERN" value="[%d{yyyy-MM-dd HH:mm:ss.SSS}][%level][%class:%line]%msg%n" />
<property name="FILE_LOG_PATTERN" value="[%d{yyyy-MM-dd HH:mm:ss.SSS}][%level][%class:%line]%msg%n" />
<appender name="APPLICATION" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_FILE}</file>
<encoder>
<pattern>${FILE_LOG_PATTERN}</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<maxHistory>30</maxHistory>
<maxFileSize>50MB</maxFileSize>
<totalSizeCap>20GB</totalSizeCap>
</rollingPolicy>
</appender>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${CONSOLE_LOG_PATTERN}</pattern>
<charset>utf8</charset>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="APPLICATION" />
</root>
</configuration>
配置数据源
spring:
datasource:
url: jdbc:mysql://localhost/readinglist
username: dbuser
password: dbpass
driver-class-name: com.mysql.jdbc.Driver
2.2 应用程序 Bean 的配置外置
@Value,ConfigurationProperties等获取属性配置值
SpringBoot实战(自定义配置)读书笔记
猜你喜欢
转载自blog.csdn.net/icool_ali/article/details/81458702
今日推荐
周排行