通过注解将属性注入 Spring Bean
当处理通过注解检测到的 Spring bean 时,可以从外部源注入属性值一个挑战。本文探讨了利用 Spring 3 中的 EL 支持来解决此问题的方法。
最初的问题是由于使用 @Repository 注解的 beans 引起的,从而消除了在 Spring XML 文件中显式配置它们的选项。然而,要注入属性值,使用 bean 的 XML 配置的典型方法是不可行的。
解决方案在于利用 Spring 3 中的 @Value 注解,它允许开发人员将属性值直接注入到字段中或设置方法。其语法为:
@Value("#{systemProperties.databaseName}") public void setDatabaseName(String dbName) { ... }
systemProperties 对象是一个隐式对象,可以在 setter 方法中访问 databaseName 属性。
此外,可以从以下位置注入属性:使用 @Value 的 Properties 对象:
@Value("#{myProperties['github.oauth.clientId']}") private String githubOauthClientId;
此方法提供了一种灵活的方式将外部属性值注入到 Spring bean 中。欲了解更多详细信息,请参阅原始答案中提供的博文。
以上是如何将属性注入到带有@Repository注解的Spring Bean中?的详细内容。更多信息请关注PHP中文网其他相关文章!