MethodInvokingFactoryBean不起作用

时间:2014-01-18 16:28:30

标签: java spring ehcache

我在classpath中创建一个包含系统属性的属性文件,名称为system.properties

文件如:

system.project_name=springsilkworm

我也使用EHcache,ehcache.xml如:

<diskStore path="${java.io.tmpdir}/${system.project_name}/cache" />

我想在system.properties中使用system.project_name。

我基于Spring开发了我的项目,所以我创建了applicationContext.xml,如:

<context:property-placeholder location="classpath*:/system.properties" ignore-resource-not-found="true" ignore-unresolvable="true" />

<bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
        <property name="targetClass" value="java.lang.System" />
        <property name="targetMethod" value="setProperty" />
        <property name="arguments">
            <list>
                <value>system.project_name</value>
                <value>${system.project_name}</value>
            </list>
        </property>
    </bean>

<bean id="ehCacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
        <property name="configLocation" value="classpath:/ehcache.xml" />
        <property name="shared" value="true" />
    </bean>

但是当我启动我的应用程序时,我找到了EHcahce使用的文件夹:

enter image description here

也就是说,MethodInvokingFactoryBean不起作用,我也在我的代码中使用System.getProperty(“system.project_name”)代码获取属性,我得到了“null”的结果,为什么?我找不到错误。

0 个答案:

没有答案