我问了一个类似的问题,但根据回答,我做了一个糟糕的工作,描述了我的追求。我有一个spring 4 webapp,它从属性文件中加载属性。我们通过spring中的“$ {proper.name”}表达式以及将一个属性对象注入到我们的一些类中来使用这些属性。
我们希望将大多数属性移动到数据库表并使其可重新加载。但是,有些需要保留在本地属性中,可能会覆盖数据库设置。这些也应该在应用程序运行后动态加载。
我知道一旦注入了一个特定的bean,就不会重新加载,这与我无关,由该模块来处理。但是我无法获得我想要的行为。特别是,我已经从apache commons配置实现了一个AbstractConfiguration来获取双源并覆盖我。但是虽然它适用于注入属性对象,但加载了“$ {prop.name}”的表达式根本不起作用。
我怎样才能让他们工作?我是否覆盖了错误的东西?它只是一些配置细节吗?
<bean id="sysProperties" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="targetObject" ref="databaseConfigurator" />
<property name="targetMethod" value="getProperties"/>
</bean>
<bean id="databaseConfigurator" class="my.util.config.MyDatabaseConfigurator">
<property name="datasource" ref="dataSource" />
<property name="propertyFile" value="/WEB-INF/my.properties" />
<property name="applicationName" value="ThisApp" />
</bean>
<bean id="dbConfigFactory" class="org.apache.commons.configuration.ConfigurationConverter" factory-method="getProperties">
<constructor-arg ref="databaseConfigurator" />
</bean>
答案 0 :(得分:0)
我没有对此进行测试,但我认为它可能有用。
- (void)postNotificationName:(NSString *)notificationName object:(id)notificationSender userInfo:(NSDictionary *)userInfo