This article brings you a summary of the configuration methods of related files in Spring Boot. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.
Profile configuration
Profile is used by Spring to provide support for different configurations for different environments. The global Profile configuration uses application-{profile}.properties (such as application- prod.properties)
Specify the active Profile by setting spring.profiles.active=prod in application.properties.
Common server configuration
server.address # 服务器 ip 绑定地址,如果你的主机上有多个网卡,可以绑定一个 ip 地址 server.session.timeout #会话过期时间,以秒为单位 server.error.path # 服务器出错后的处理路径 /error server.servlet.contextpath # springb boot 应用的上下文 server.port # spring boot 应用监听端口
Tomcat related configuration
server.tomcat.accesslog.enabled=false # 打开tomcat访问日志 server.tomcat.accesslog.directory=logs # 访问日志所在的目录 server.tomcat.accept-count= # 允许http请求缓存到请求队列的最大个数,默认不限制 server.tomcat.max-connections= # 最大连接数,默认不限制,如果一旦连接数到达,剩下的连接将会保存到请求缓存队列里 server.tomcat.max-thread= # 最大工作线程数 server.tomcat.max-http-post-size= # http post 内容最大长度,默认不限制
Log configuration
By default, the log can be used without any configuration. Spring Boot uses LogBack as a log implementation:
import org.slf4j.Logger; import org.slf4j.LoggerFactory ... public class HelloWorldController { private static final Logger log = LoggerFactory.getLogger(HelloWorldController.class); .... }
The log levels include: ERROR, WARN, INFO, DEBUG and TRACE;
By default, only information above the INFO level will be printed to the console. You can Set the log output level yourself
logging.level.root=info # org 包下的日志级别 logging.level.org=warn logging.level.com.yourcorp=debug # Spring Boot 默认并未输出日志到文件,可以设置 logging.file=my.log # 日志输出到my.log 中,位于Spring Boot 应用运行的当前目录,也可以指定日志存放的路径 logging.path=e:/temp/log
No matter which method is used to record the log file, a new log file will be automatically regenerated when it reaches 10MB that day.
Configure the browser to display ico
After the Spring Boot webapp is started and accessed through the browser, the browser will display a green leaf icon. If you need to change to your own icon, create a new static directory in the project resources directory, create the images
directory under the static
directory, and then create the project's favicon.ico
Place it in the images
directory and add the following styles to each page
<link rel="shortcut icon" href="/images/apple.ico">
Configuration data source
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8&useSSL=false spring.datasource.username=root spring.datasource.password=123456 spring.datasource.driver-class-name=com.mysql.jdbc.Driver
Mybatis configuration
#mybatis mybatis: config-locations: classpath:mybatis/mybatis-config.xml mapper-locations: classpath:mybatis/mapper/*.xml type-aliases-package: net.dowhile.demo.entity
For more information, please refer to Spring Boot Mybatis
Read application configuration
Can be read in the applicationapplication.properties
file, Spring Boot provides three methods. The general Eeviroment
class can obtain the value in application.properties
through the key-value
method. You can also automatically inject attribute values through the @Value
annotation, and you can also automatically inject a set of attributes into a configuration class.
1, Environment
@Configuration public class EnvConfig { @Autowired private Environment env; public int getServerPort() { return env.getProperty("server.port", Integer.class); } }
2, @Value
Directly inject a configuration information into the Bean managed by Spring through the @Value
annotation
@GetMapping("/value") public String value(@Value("${server.port:8080}") int port) { return "port:" + port; }
@Value annotation supports SpEL expressions. If the property does not exist, a default value can be provided
3, @ConfigurationProperties
Normally, a group of configuration properties of the same type It is more convenient to map to a class.
server.port=9090 server.context-path=/config
The above two configuration properties are related to the web server configuration and both have the server prefix, so you can use the annotation `` to obtain this set of implementations.
@ConfigurationProperties("server") @Configuration class ServerConfig { private int port; private String contextPath; public int getPort() { return port; } public void setPort(int port) { this.port = port; } public String getContextPath() { return contextPath; } public void setContextPath(String contextPath) { this.contextPath = contextPath; } }
You can use @Autowired
to directly inject the configuration class, and you can also specify the properties file location.
@Autowired private ServerConfig serverConfig; @ConfigurationProperties(prefix = "server", locations = {"classpath:config/author.properties"});
The above is the detailed content of Summary of configuration methods of related files in Spring Boot. For more information, please follow other related articles on the PHP Chinese website!