两种:
第一种:只对Book.java中增加注解
举例:
application.properties
book.brand=九阳神功
book.price=100000
@Component // 只有在容器中的组件才能拥有springboot的强大功能
@ConfigurationProperties(prefix = "book")
public class Book{
private String brand;
private Integer price;
}
HelloController.java
@RestController
public class HelloController {
@Autowired
Book book;
@RequestMapping("/book")
public Book book(){
return book;
}
}
访问请求:localhost:8080/book 会显示响应配置文件中的内容。
第二种:
Book.java中增加注解
@ConfigurationProperties(prefix = "book")
配置类 MyConfig.java中增加注解:
@EnableConfigurationProperties(Book.class)
举例:
application.properties
book.brand=九阳神功
book.price=100000
Book.java
@Data
@ToString
@ConfigurationProperties(prefix = "book")
public class Book{
private String brand;
private Integer price;
/**
* 1.
* @Component // 只有在容器中的组件才能拥有springboot的强大功能
* @ConfigurationProperties(prefix = "book")
*
* 2.
* @ConfigurationProperties(prefix = "book")
* 配置类中增加
* @EnableConfigurationProperties(Book.class)
*/
}
配置类 MyConfig.java
@Configuration(proxyBeanMethods = true)
@ImportResource("classpath:beans.xml") // 使用xml注入相关bean,如果其它方式注入,可以注释该行
@EnableConfigurationProperties(Book.class)
/**
* 1.开启Bar配置绑定功能
* 2.把这个Book组件自动注册到容器中
*/
public class MyConfig {}
优点:@EnableConfigurationProperties(Book.class) 此注解,可以绑定配置已经存在的jar包中的已存在类。