在@Bean方法上使用@ConfigurationProperties批注
有人可以给MWE @ConfigurationProperties
直接在@Bean
方法上使用注释的方法吗?
我已经看到了无数的关于在类定义上使用它的示例-但还没有@Bean
方法的示例。
引用文档:
- 这种添加到一个类定义或
- @Target(value = {TYPE, })
因此,我认为还有一种可能性和预期的用途-但不幸的是,我无法弄清楚。
回答:
spring.datasource.url = [url]spring.datasource.username = [username]
spring.datasource.password = [password]
spring.datasource.driverClassName = oracle.jdbc.OracleDriver
@Bean
@ConfigurationProperties(prefix="spring.datasource")
public DataSource dataSource() {
return new DataSource();
}
这里的DataSource类具有属性url,用户名,密码,driverClassName,因此spring boot将它们映射到创建的对象。
DataSource类的示例:
public class DataSource { private String url;
private String driverClassName;
private String username;
private String password;
//getters & setters, etc.
}
换句话说,这与使用构造型注解(@ Component,@ Service等)初始化某些bean的效果相同,例如
@Component@ConfigurationProperties(prefix="spring.datasource")
public class DataSource {
private String url;
private String driverClassName;
private String username;
private String password;
//getters & setters, etc.
}
以上是 在@Bean方法上使用@ConfigurationProperties批注 的全部内容, 来源链接: utcz.com/qa/436165.html