Spring boot 提供了两种常用的配置文件,properties和yml文件。

1、yml

yml是YAML(YAML Ain't Markup Language)语言的文件,以数据为中心,比json、xml等更适合做配置文件.

使用空格 Space 缩进表示分层,不同层次之间的缩进可以使用不同的空格数目

注意:key后面的冒号,后面一定要跟一个空格,树状结构

server:

port: 8090

session-timeout: 30

tomcat.max-threads: 0

tomcat.uri-encoding: UTF-8

2、properties

properties形式比较简单,key=value

server.port=8090
server.session-timeout=30
server.tomcat.max-threads=0
server.tomcat.uri-encoding=UTF-8

配置文件官方参考:https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#common-application-properties

3、通过配置文件自动映射属性

1)application.properties文件中增加一个属性
#文件上传路径配置
web.file.path=D:/work/masterSpring/code/xdclass_springboot/src/main/resources/static/images/
2)controller上面增加配置

4、通过配置文件自动映射实体

1)配置文件application.properties文件中增加实体属性
#测试配置文件注入
test.domain=www.class.net
test.name=springboot 2)新建一个实体类ServerSetting,包括domain和name两个属性。
package net.xdclass.demo.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RestController; @RestController
@Component
@ConfigurationProperties //设置相关属性
@PropertySource(value="application.properties") //指定配置文件 public class ServerSetting {
@Value("${test.name}") //注入值
private String name;
@Value("${test.domain}")
private String domain; public String getName() {
return name;
} public String getDomain() {
return domain;
} public void setName(String name) {
this.name = name;
} public void setDomain(String domain) {
this.domain = domain;
}
}

3)在controller中注入这个类,返回类的实体



Spring Boot 知识笔记(配置文件)的更多相关文章

  1. Spring Boot 知识笔记(热部署)

    热部署原理: 使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为restart ClassLoader ...

  2. Spring Boot 知识笔记(整合Mybatis)

    一.pom.xml中添加相关依赖 <!-- 引入starter--> <dependency> <groupId>org.mybatis.spring.boot&l ...

  3. Spring Boot 知识笔记(创建maven项目、HTTP接口)

    一.使用Maven手工创建SpringBoot应用(IDEA) 1.  点击File——New——Project——Maven——Next,填写相关信息,创建项目. 2.  在pom.xml中添加相关 ...

  4. Spring Boot 知识笔记(thymleaf模板引擎)

    一.pom.xml中引入 <dependency> <groupId>org.springframework.boot</groupId> <artifact ...

  5. Spring Boot 知识笔记(定时任务与异步)

    一.定时任务 1.启动类里面增加注入 @SpringBootApplication //@SpringBootApplication = @Configuration+@EnableAutoConfi ...

  6. Spring Boot 知识笔记(整合Redis)

    一.引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  7. Spring Boot 知识笔记(集成zookeeper)

    一.本机搭建zookeeper伪集群 1.下载安装包,复制三份 2.每个安装包目录下面新建一个data文件夹,用于存放数据目录 3.安装包的conf目录下,修改zoo.cfg配置文件 # The nu ...

  8. Spring Boot 知识笔记(整合Mybatis续-补充增删改查)

    续上篇,补充数据库增删改查的其他场景. 一.Mapper中添加其他场景操作 package net.Eleven.demo.Mapper; import net.Eleven.demo.domain. ...

  9. Spring Boot 知识笔记(servlet、监听器、拦截器)

    一.通过注解自定义servlet package net.Eleven.demo.servlet; import javax.servlet.ServletException; import java ...

随机推荐

  1. Centos 7.5 安装JDK

    #wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com ...

  2. 一次kuberneets evicted的历险

    一.概述 kubernetes 的eviction检测diskpresure,检测的是kubelet的root-dir.kubelet的默认root-dir是/var/lib/kubelet,可以使用 ...

  3. Spring Boot 一个依赖搞定 session 共享,没有比这更简单的方案了!

    有的人可能会觉得题目有点夸张,其实不夸张,题目没有使用任何修辞手法!认真读完本文,你就知道松哥说的是对的了! 在传统的单服务架构中,一般来说,只有一个服务器,那么不存在 Session 共享问题,但是 ...

  4. Prometheus 安装Alertmanager集成

    Prometheus 安装Alertmanager集成 # 下载地址 地址1:https://prometheus.io/download/ 地址2:https://github.com/promet ...

  5. Python 学习 第14篇:数据类型(元组和集合)

    元组和集合是Python中的基本类型 一,元组 元组(tuple)由小括号.逗号和数据对象构成的集合,各个项通过逗号隔开,元组的特点是: 元组项可以是任何数据类型,也可以嵌套 元组是一个位置有序的对象 ...

  6. 关于plupload组件无法拍照上传的解决方案

    关于plupload组件无法拍照上传的解决方案 其实是由于文件大小的问题 filters: { max_file_size: '2mb',//把这个调大些就可以了 前提是服务器支持 prevent_d ...

  7. sql server 中取前n行字段最大值问题

    例子 取前三行最大ID ID from Students)AS A 这样写得到的却是整个表的最大ID值,并不是我们需要的值 要在句中加入order by ID ID from Students ord ...

  8. 《EOPL》: 实现了惰性求值的两种参数传递策略

    call-by-need 不过是比 call-by-name 多了一个 memorization 的步骤

  9. Message "'OFFSET' 附近有语法错误。\r\n在 FETCH 语句中选项 NEXT 的用法无效。" 解决办法 EntityFrameworkCore

    由于新版的EntityFrameworkCore默认使用的是SqlServer2012或以上版本的Sql语法分页,来提高性能. 所以使用数据库的版本如果低于2012(如Sqlserver2008)需要 ...

  10. Unity Ioc 依赖倒置及Untity AOP被动拦截/自动拦截

    各位博友金安,首先声明这是一篇转载的博客,原文链接:https://www.cnblogs.com/scottpei/archive/2013/01/08/2851087.html 十年河东,十年河西 ...