现在有一个问题是:
在applicationContext中,<bean name="ReaderJob" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass">
<value>com.AlertMsgReaderJob</value>
</property>
<property name="jobDataAsMap">
<map>
<entry key="settingService">
    <ref local="settingService" />
</entry>
<entry key="ftpServerAddress">    
                                       <value>ftpServerAddress</value>
</entry>
<entry key="ftpPort">
<value>${sms.ftpPort}</value>
</entry>
                           </map>
</property>
</bean>
我想在<entry key="ftpServerAddress">    
                                       <value>ftpServerAddress</value>
</entry>
中的value中放置放getXXX()方法返回的值ftpServerAddress,我这样写是否可以?如果不可以我该怎么将getXXX方法的返回值ftpServerAddress在配置文件中配置?

解决方案 »

  1.   

    1st 都使用了配置文件了,为何不使用${ftpServerAddress}形势的配置呢2nd 既然想用getXXX()方法,那就别使用注入,直接在想使用ftpServerAddress的地方调这个方法嘛。
      

  2.   

    类似这样 <!-- obj.getXxx的那个obj -->
    <bean id="obj" class="xxx.xxx.Xxx" />
            <!-- 通过obj.getXxx()生成名叫ftpServerAddress的bean -->
    <bean id="ftpServerAddress" factory-bean="obj" factory-method="getXXX">
    <!-- 如果需要参数,用contructor-arg传递
    <constructor-arg value="xxxx" type="java.lang.String" />
                    -->
    </bean>
    ....
    <!-- entry中value引用上面生成的对象-->
    <entry key="ftpServerAddress" value-ref="ftpServerAddress" />
      

  3.   

    class AlertMsgReaderJob
    {
    String XXX;public void setXXX
    public String getXXX}配置 文件 
    <property name="XXX">
    <value>ftpServerAddress</value>
    </property> 不知道理解的对不对
    难道你是有
    String ftpServerAddress;然后<property name="XXX">
    的value里又要有getFtpServerAddress()的返回值?这样好像通过配置不行,估计得在代码里写了。