Springboot-配置绑定
使用Java读取到properties文件(即application.properties)中的内容,并且把它封装到JavaBean中,以供随时使用
两种方式:1、在Java文件的上面进行添加标注。如:
@Component
@ConfigurationProperties(prefix = “mycar”) //mycar是在配置文件里的
public class Car {}
2、在配置文件里添加标注。如:
@EnableConfigurationProperties(Car.class)//1、开启Car配置绑定功能;2、把这个Car这个组件自动注册到容器中
public class MyConfig {
}
第一步:application.properties文件内容如:
mycar.brand=baoma
mycar.price=500000
第二步:在控制类中设置映射请求。如:
package com.example.controller;
import com.example.bean.Car;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@Autowired //自动注入
Car car;
@RequestMapping("/car")
public Car car(){
return car;
}
@RequestMapping("/hello") //映射请求,希望浏览器给我们发送hello请求
public String handle01(){
return "Hello,Spring Boot 2!";
}
}
第三步:读取到properties文件(即application.properties)中的内容
第一种方式:
Java文件
package com.example.bean;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
//只有在容器中的组件,才会拥有Springboot提供的强大功能
@Component
@ConfigurationProperties(prefix = "mycar")
public class Car {
private String brand;
private String price;
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public String getPrice() {
return price;
}
public void setPrice(String price) {
this.price = price;
}
@Override
public String toString(){
return "Car{brand="+brand+",price="+price+"}";
}
}
第二种方式:
2、在配置文件里添加标注。如:
在Java文件中,如:
package com.example.bean;
import org.springframework.boot.context.properties.ConfigurationProperties;
@ConfigurationProperties(prefix = "mycar")
public class Car {
private String brand;
private String price;
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public String getPrice() {
return price;
}
public void setPrice(String price) {
this.price = price;
}
@Override
public String toString(){
return "Car{brand="+brand+",price="+price+"}";
}
}
在配置类文件中。如:
package com.example.config;
import com.example.bean.Car;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Configuration;
@Configuration(proxyBeanMethods = true) //告诉SpringBoot这是一个配置类 == 配置文件
@EnableConfigurationProperties(Car.class) //1、开启Car配置绑定功能;2、把这个Car这个组件自动注册到容器中
public class MyConfig {
}