Spring Boot 的配置文件
Profile 配置
Profile 是 Spring 用来针对不同的环境对不同的配置提供支持的,全局的 Profile 配置使用 application-{profile}.properties
(如 application-prod.properties
)
通过在 application.properties
中设置 spring.profiles.active=prod
来指定活动的 Profile.
服务器常用配置
server.address # 服务器 ip 绑定地址,如果你的主机上有多个网卡,可以绑定一个 ip 地址
server.session.timeout #会话过期时间,以秒为单位
server.error.path # 服务器出错后的处理路径 /error
server.servlet.contextpath # springb boot 应用的上下文
server.port # spring boot 应用监听端口
Tomcat 相关配置
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 内容最大长度,默认不限制
日志配置
默认情况下,不需要对日志做任何配置就可以使用,Spring Boot 使用 LogBack 作为日志的实现:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory
...
public class HelloWorldController {
private static final Logger log = LoggerFactory.getLogger(HelloWorldController.class);
....
}
日志级别有:ERROR、WARN、INFO、DEBUG和TRACE;
默认情况下,INFO级别以上的信息才会打印到控制台,可以自己设定日志输出级别
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
# 输出 mybatis 日志
logging.level.com.dy.springboot.server.mapper=debug
# 其中logging.level.com.你的Mapper包=日志等级
无论使用哪种方式记录日志文件,当日之达到10MB的时候会自动重新生成一个新日志文件。
配置浏览器显示 ico
Spring Boot 的 webapp 启动后,通过浏览器访问,浏览器会显示一个绿色的树叶图标。如果需要换成自己的图标,在项目 resources 目录下新建一个 static 目录,在 static
目录下创建 images
目录,然后项目的 favicon.ico
放在 images
目录下,每个页面添加以下样式即可
<link rel="shortcut icon" href="/images/apple.ico">
配置数据源
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 配置
#mybatis
mybatis:
config-locations: classpath:mybatis/mybatis-config.xml
mapper-locations: classpath:mybatis/mapper/*.xml
type-aliases-package: net.dowhile.demo.entity
更多请参考Spring Boot Mybatis
读取应用配置
可以在应用中读取 application.properties
文件,Spring Boot 提供了三种方式,通用的 Eeviroment
类,可以通过 key-value
方式获取到 application.properties
中的值,也可以通过 @Value
注解,自动注入属性值,还可以将一组属性自动注入到一个配置类中。
1、 Environment
@Configuration
public class EnvConfig {
@Autowired private Environment env;
public int getServerPort() {
return env.getProperty("server.port", Integer.class);
}
}
2、 @Value
直接通过 @Value
注解注入一个配置信息到 Spring 管理的 Bean 中
@GetMapping("/value")
public String value(@Value("${server.port:8080}") int port) {
return "port:" + port;
}
@Value 注解支持 SpEL 表达式,如果属性不存在,可以提供一个默认值
3、@ConfigurationProperties
通常情况下,将一组同样类型的配置属性映射为一个类更为方便。
server.port=9090
server.context-path=/config
以上两个配置属性都与 web 服务器配置相关,都有 server 前缀,因此可以使用注解 `` 来获取这一组实现。
@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;
}
}
可以使用 @Autowired
直接注入该配置类,还可以指定 properties 文件位置。
@Autowired
private ServerConfig serverConfig;
@ConfigurationProperties(prefix = "server", locations = {"classpath:config/author.properties"});
Spring Boot 的配置文件的更多相关文章
- Spring Boot 的配置文件application.properties
Spring Boot 中的application.properties 是一个全局的配置文件,放在src/main/resources 目录下或者类路径的/config下. 作为全局配置文件的app ...
- Spring Boot之配置文件值注入(@ConfigurationProperties)
前言:Spring Boot配置文件值的注入有两种方式,分别是 @ConfigurationProperties @Value 这里我们使用第一种 首先我们创建一个application.yml文件, ...
- Spring Boot(二) 配置文件
文章导航-readme 一.配置Spring Boot热部署 技术的发展总是因为人们想偷懒的心理,如果我们不想每次修改了代码,都必须重启一下服务器,并重新运行代码.那么可以配置一下热部署.有了 ...
- Spring Boot属性配置文件:application.properties 详解
学习资料 网址 官方说明文档 https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-pro ...
- 一:Spring Boot 的配置文件 application.properties
Spring Boot 的配置文件 application.properties 1.位置问题 2.普通的属性注入 3.类型安全的属性注入 1.位置问题 当我们创建一个 Spring Boot 工程时 ...
- Spring Boot 核心配置文件 bootstrap & application
Spring Boot 核心配置文件 bootstrap & application 1.SpringBoot bootstrap配置文件不生效问题 2.bootstrap/ applicat ...
- 精进 Spring Boot 03:Spring Boot 的配置文件和配置管理,以及用三种方式读取配置文件
精进 Spring Boot 03:Spring Boot 的配置文件和配置管理,以及用三种方式读取配置文件 内容简介:本文介绍 Spring Boot 的配置文件和配置管理,以及介绍了三种读取配置文 ...
- spring boot全局配置文件优先级
前两篇介绍的application配置文件,即为spring boot全局配置文件.那么spring boot加载配置文件的时候,怎么确定加载哪个目录下哪个文件呢? spring boot默认的配置文 ...
- spring boot项目配置文件集合
表 1. Spring Boot 推荐的基础 POM 文件 名称 说明 spring-boot-starter 核心 POM,包含自动配置支持.日志库和对 YAML 配置文件的支持. spring-b ...
- Spring Boot: Yaml配置文件 以及 @ConfigurationProperties属性获取
Yaml配置文件 概述 Spring Boot在支持application.properties配置文件的同时,也支持application.yaml配置文件. 配置文件中的属性,可以通过: 通过@V ...
随机推荐
- Win10上使用Linux Subsystem配置cuckoo sandbox
原文连接:https://www.trustwave.com/Resources/SpiderLabs-Blog/Cuckoo--Linux-Subsystem--Some-Love-for-Wind ...
- 转载:GitHub 新手详细教程
GitHub 新手详细教程 https://blog.csdn.net/Hanani_Jia/article/details/77950594
- redis数据类型(六)Sorted set类型
一.sorted set类型 sorted set是有序集合,它在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,会自动重新按新的值调整顺序.可以理解了有两列的 m ...
- 724_Find-Pivot-Index
目录 724_Find-Pivot-Index Description Solution Java solution Python solution 724_Find-Pivot-Index Desc ...
- 仿淘宝商品详情页上拉弹出新ViewController
新项目就要开始做了,里面有购物那块,就试着先把淘宝商品详情页的效果做了一下. 1.需求 1.第一次上拉时,A视图拉到一定距离将视图B从底部弹出,A视图也向上 2.显示B视图时下拉时,有刷新效果,之后将 ...
- C#中使用Log4Net记录日志
https://www.cnblogs.com/W--Jing/p/8125652.html 实例参考 https://www.cnblogs.com/soundcode/p/4866078.html ...
- java线程总结2--wait/notify(all)/sleep以及中断概念
上一篇关于线程的博客简单梳理了一下多线程的一些基本概念,今天这篇博客再进行多线程编程中一些核心的方法进行简单的梳理和总结,主要是wait,sleep和notify方法以及中断的概念 一.中断概念. 在 ...
- 二、spark SQL交互scala操作示例
一.安装spark spark SQL是spark的一个功能模块,所以我们事先要安装配置spark,参考: https://www.cnblogs.com/lay2017/p/10006935.htm ...
- 4 springboot 集成swagger2
Swagger:实时生成在线接口文档,方便测试和沟通 官网地址:https://swagger.io/ 引入依赖 <dependency> <groupId>io.spring ...
- 前端(十一):props、state及redux关系梳理
所谓状态机,是一种抽象的数据模型,是“事物发展的趋势”,其原理是事件驱动.广泛地讲,世界万物都是状态机. 一.状态机是一种抽象的数据模型 在react中,props和state都可以用来传递数据.这里 ...