Spring,从数据库中自动连接@Value

时间:2010-04-11 10:44:01

标签: spring configuration-files

我正在使用属性File来存储一些配置属性,这些属性以这种方式访问​​:

@Value("#{configuration.path_file}")
private String pathFile;

是否可以(使用Spring 3)使用相同的@Value注释,但是从数据库而不是文件加载属性?

2 个答案:

答案 0 :(得分:2)

假设您的数据库中有一个表存储了键/值对:

定义一个新的bean“applicationProperties” - 伪代码跟随...

public class ApplicationProperties {
    @AutoWired
    private DataSource datasource;

    public getPropertyValue(String key) {
        // transact on your datasource here to fetch value for key
        // SNIPPED
    }
}

在应用程序中需要的地方注入此bean。如果你已经有一个dao / service层,那么你就可以使用它了。

答案 1 :(得分:1)

虽然没有使用过spring 3,但我假设你可以,如果你创建一个从数据库中读取属性并用getter公开它们的bean。