簡體   English   中英

使用xml配置的Spring bean類中的DAO空

[英]DAO null in spring bean class with xml config

我試圖將uploadDao注入bean DemoHandler(下面的XML)中。 但正如預期的那樣,它為Null。 問題是如何正確注入DAO。

現在,有一個從WebUploadServiceImpl到DemoHandler的方法調用,我可以再添加1個參數並從uploadDao發送所需的值,但是該方法可用於多個Java類,並且所有這些方法都需要重構,並且需要新的參數與其他類別無關。

有沒有辦法讓uploadDao注入DemoHandler? 任何幫助深表感謝。 謝謝

春季XML:

<bean id="wuService" class="com.abcd.service.WebUploadServiceImpl">
        <property name="uploadDao" ref="uploadDao" />
        <property name="webHandlers">
            <set>
                <bean class="com.abcd.service.handler.DemoHandler" />
            </set>
        </property>
</bean>

碼:

public class DemoHandler {

private UploadDao uploadDao;

   public List handleM(...) {
        ...
        Period period = uploadDao.anyMethod(..); --- Null here
   }    
}

如果DemoHandler需要設置dao,為什么不這樣做呢?

<bean id="uploadDao" class="whatever.dao.UploadDaoImpl"/>

<bean id="wuService" class="com.abcd.service.WebUploadServiceImpl">
        <property name="uploadDao" ref="uploadDao" />
        <property name="webHandlers">
            <set>
                <bean class="com.abcd.service.handler.DemoHandler">
                    <property name="uploadDao" ref="uploadDao" />
                </bean>
            </set>
        </property>
</bean>

您只需要復制WebUploadServiceImpl已經使用的注入機制。 您尚未顯示該代碼,我不知道您是否使用@ @Autowired ,set方法或任何其他可能性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM