//Resources目录下创建 application.propertiesspring.profiles.active=prod
//Resources目录下创建 application-prod.propertiesbook.name=spring boot prod
package com.example.entity;import org.springframework.boot.context.properties.ConfigurationProperties;import org.springframework.stereotype.Component;/** * Created by liz19 on 2017/1/26. */@Component@ConfigurationProperties(prefix = "book")public class Book { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; }}
package com.example;import com.example.entity.Book;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.context.properties.EnableConfigurationProperties;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestController@SpringBootApplication@EnableConfigurationProperties({Book.class})public class DemoApplication { @Autowired private Book book; @RequestMapping("/") public Book index(){ return book; } public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); }}
1. spring.profiles.active 指定使用的profile
2. Book为配置类, profile中的配置对Book类进行注入
3. @ConfigurationProperties(prefix = "book") 开启配置文件管理并用前缀为book的值进行注入