直到现在我还没有使用spring框架。我尝试阅读和阅读spring文档,但无法找到以下简单问题的答案。
该应用程序是构建目录的ant。到目前为止,当我尝试启动 JBOSS (或apache)服务器时,日志显示它无法构建bean,因为它无法找到
VAR /配置/ madagascar.prop。 。 在 WEB-INF / applicationContext.xml
中写下以下代码段
<bean id="application.home" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="targetClass" value="java.lang.System"/>
<property name="targetMethod" value="getProperty"/>
<property name="arguments">
<list>
<value>application.home</value>
</list>
</property>
</bean>
<bean id="propertyFile" class="java.io.File">
<constructor-arg ref="application.home"/>
<constructor-arg value="var/config/madagascar.prop"/>
</bean>
您能否告诉我预计{application.home}
和var/config
的位置?
它是相对于Eclipse项目主页还是相对于WEB-INF?
尝试做的bean id =“ application.home ”是什么 - 是否尝试从系统环境中读取“ application.home ”的值?
答案 0 :(得分:1)
&#34; application.home&#34;是System.getProperty("application.home")
的运行时值和&#34; propertyFile&#34; bean是一个java.io.File对象,它通过调用new java.io.File(String, String)
返回,其中包含application.home和第二个String。
如果您想要的bean是&#39; propertyFile&#39;,那么运行时的等价物将是:
File file = new File(System.getProperty("application.home"),"var/config/madagascar.prop");
该配置是一种非常Spring 1.x(旧的)处理方式。 XML是执行许多这类初始化的一种非常流行的方式,而这是Spring @JavaConfig
方法变得如此受欢迎的原因之一。