springboot入门-3 配置相关

一.查看默认配置

springboot默认给我们配置了许多东西,可以进行查看
在这里插入图片描述

二.修改配置

如果需要修改配置,比如说修改tomcat端口,可以在resources目录下新建一个application.properties文件
在里面写上 server.port=8081,就可以覆盖默认的配置

三.yml(yaml)配置文件

除了.properties外,还提供了yml(yaml)配置文件。YML文件是以数据为核心的,比传统的xml方式更加简洁。YML文件的扩展名可以使用.yml或者.yaml。
.properties文件非常好理解,通过=号赋值,
.yml文件类似于json,但它又是通过空格来编织层级关系,这一点又类似python。在yml中,相同缩进代表同一级别

例如:在application.properties,配置如下

 server.port=8081

在.yml文件中配置如下

server:
	port: 8082  

如果多个配置文件配置了相同的属性,由于加载顺序是.yml .yaml .properties
后面的配置会覆盖前面的配置
.即端口号为8081

四.yml配置简单练习

#普通数据配置
name: zhangsan
#对象的配置
person:
  name: zhangsan
  age: 18
  addr: beijing

#行内对象的配置
person1: {name: zhangsan,age: 18,addr: beijing}

#配置数组,集合(普通字符串)
city:
  - beijing
  - tianjin
  - shanghai

city1: [beijing,tiangjin,shanghai]

#配置数组,集合(对象数据)
student:
  - name: tom
    age: 18
    addr: beijing
  - name: lucy
    age: 17
    addr: tianjing

student1: [{name: tom,age: 18,addr: beijing},{name: lucy,age: 17,addr: tianjing}]

#map配置
map:
  key1: value1
  key2: value2  

五.properties文件转为yml文件

properties:

jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/test
jdbc.username=root
jdbc.password=root

yml:

jdbc:
  driverClassName: com.mysql.jdbc.Driver
  url: jdbc:mysql://127.0.0.1:3306/test
  username: root
  password: root

六.多个yml

可以配置多个yml文件,只要他们的名字是application-***.yml就行,例如application-abc.yml ,
application-xyz.yml.
多个yml需要在application.yml中激活

spring:
  profiles:
    active: abc,xyz

七.获得配置的值

方式一:通过value取值
@Controller
public class Quick2Controller {

    @Value("${name}")
    private String name;

	@Value("${person.addr}")
 	private String addr;
 	
    @RequestMapping("/quick2")
    @ResponseBody
    public String quick2(){
        //获得配置文件的信息


        return "name: "+name+",addr= "+addr;
    }
}  

启动main方法,浏览器输入localhost:8080/quick2
页面显示:name: zhangsan,addr=beijing
缺点:当配置内容多的时候,需要多次取值

方式二 使用@ConfigurationProperties注解

首先为name和addr提供getter和setter方法,加上注解@ConfigurationProperties,里面写prefix前缀,
这样,就会自动前往person下寻找name和addr

@Controller
@ConfigurationProperties(prefix = "person")
public class Quick3Controller {

    private String name;
    private String addr;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAddr() {
        return addr;
    }

    public void setAddr(String addr) {
        this.addr = addr;
    }

    @RequestMapping("/quick3")
    @ResponseBody
    public String quick2(){
        //获得配置文件的信息
        return "name: "+name+",addr= "+addr;
    }
}

注意加上@ConfigurationProperties的执行器,在配置yml里属性时会有提示。可以先写属性,再去配置。

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-configuration-processor</artifactId>
	<optional>true</optional>
</dependency>

八.修改已整合框架的配置

步骤:
1.Spring Boot整合XX框架
2.找到spring-boot-autoconfigure-XXX.RELEASE.jar
3.找到XX框架所在的Package
4.XXProperties类里查看对该框架可以配置的配置项
5.在resources下的application.properties设置XX框架的配置项
例:修改tomcat的端口号:
在application.yml文件中

#tomcat端口
server:
  port: 80
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值