Spring Boot Framework带有内置的机制,用于使用名为 application.properties 的文件进行应用程序配置。它位于 src/main/resources 文件夹中,如下图所示。
Spring Boot提供了可以在 application.properties 文件中配置的各种属性。这些属性具有默认值。我们可以为Spring Boot应用程序设置一个或多个属性。 Spring Boot还允许我们根据需要定义自己的属性。
application.properties文件允许我们在 不同的环境中运行应用程序。 简而言之,我们可以使用application.properties文件进行以下操作:
配置Spring Boot框架
定义我们的应用程序自定义配置属性
application.properties的示例
#configuring application name
spring.application.name = demoApplication
#configuring port
server.port = 8081
在上面的示例中,我们已经配置了 应用程序名称和 端口。端口8081表示应用程序在端口 8081 上运行。
注意: 以#开头的行是注释。
YAML属性文件
Spring Boot提供了另一个用于配置属性的文件,称为 yml 文件。 Yaml文件起作用是因为在类路径中存在 Snake YAML jar。除了使用application.properties文件之外,我们还可以使用application.yml文件,但是 Yml 文件应该出现在类路径中。
应用示例.yml
spring:
application:
name: demoApplication
server:
port: 8081
在上面的示例中,我们已经配置了 应用程序名称和 端口。端口8081表示应用程序在端口 8081 上运行。
Spring Boot属性类别
有 16个Spring Boot属性的类别如下:
核心属性
缓存属性
邮件属性
JSON属性
数据属性
交易属性
数据迁移属性
集成属性
网络媒体资源
模板属性
服务器属性
安全属性
RSocket属性
执行器属性
DevTools属性
测试属性
应用程序属性表
下表提供了常见的Spring Boot属性列表:
属性 默认值 说明
Debug false 它启用调试日志。
spring.application.name 它用来设置应用程序名称。
spring.application.admin.enabled false 它用于启用应用程序的管理功能。
spring.config.name application 用于设置配置文件名。
spring.config.location 它用于配置文件名。
server.port 8080 配置HTTP服务器端口
server.servlet.context-path 它配置应用程序的上下文路径。
logging.file.path 它配置日志文件的位置。
spring.banner.charset UTF-8 横幅文件编码。
spring.banner.location classpath: banner.txt 它用于设置标题文件的位置。
logging.file 它用于设置日志文件名。例如,data.log。
spring.application.index 它用来设置应用程序索引。
spring.application.name 它用来设置应用程序名称。
spring.application.admin.enabled false 它用于为应用程序启用管理功能。
spring.config.location 它用于配置文件位置。
spring.config.name application 用于设置文件名。
spring.mail.default-encoding UTF-8 它用于设置默认的MimeMessage编码。
spring.mail.host 用于设置SMTP服务器主机。例如,smtp.example.com。
spring.mail.password 用于设置SMTP服务器的登录密码。
spring.mail.port 用于设置SMTP服务器端口。
spring.mail.test-connection false 它用于测试邮件服务器在启动时是否可用。
spring.mail.username 用于设置SMTP服务器的登录用户。
spring.main.sources 它用于设置应用程序的来源。
server.address 它用于设置服务器应绑定到的网络地址。
server.connection-timeout 用于设置连接器在关闭连接之前将等待另一个HTTP请求的时间(以毫秒为单位)。
server.context-path 它用于设置应用程序的上下文路径。
server.port 8080 用于设置HTTP端口。
server.server-header 用于服务器响应标头(如果为空则不发送标头)
server.servlet-path / 用于设置主调度程序servlet的路径
server.ssl.enabled 用于启用SSL支持。
spring.http.multipart.enabled 真 它用于启用对分段上传的支持。
spring.servlet.multipart.max-文件大小 1MB 用于设置最大文件大小。
spring.mvc.async.request-timeout 它用于设置时间(以毫秒为单位)。
spring.mvc.date-format 用于设置日期格式。例如,dd/MM/yyyy。
spring.mvc.locale 用于设置应用程序的语言环境。
spring.social.facebook.app-id 它用于设置应用程序的Facebook App ID。
spring.social.linkedin.app-id 它用于设置应用程序的LinkedIn应用程序ID。
spring.social.twitter.app-id 它用于设置应用程序的Twitter App ID。
security.basic.authorize-mode role 用于设置要应用的安全授权模式。
security.basic.enabled true 它用于启用基本身份验证。
Spring.test.database.replace any 要替换的现有数据源的类型。
Spring.test.mockmvc.print default MVC打印选项
spring.freemaker.content-type text/html 内容类型值
server.server-header 用于服务器响应标头的值。
spring.security.filter.dispatcher-type async, error, request 安全过滤器链调度程序类型。
spring.security.filter.order -100 安全过滤器链顺序。
spring.security.oauth2.client.registration。* OAuth客户端注册。
spring.security.oauth2.client.provider。* OAuth提供者详细信息。