//Resources目录下创建 application.properties spring.profiles.active=prod
//Resources目录下创建 application-prod.properties book.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的值进行注入