簡體   English   中英

如何在Spring中引用JNDI中的多個bean?

[英]How to reference more than one bean from JNDI in Spring?

我在JBoss EAP 6.1上配置了一個郵件會話。 我正在使用Spring 4.我正在使用這樣的查找:

<jee:jndi-lookup id="contactMailSession"
                 jndi-name="java:jboss/mail/Contact"
                 expected-type="javax.mail.Session" />

如果我在JBoss服務器上添加了三個郵件會話並在Spring XML配置文件中又添加了三個查找,該怎么辦? 我如何將一個豆子注入另一個豆子? 我無法在<jee:jndi-lookup ... />標記中添加限定符。

問題是:如果我有這個怎么辦:

<jee:jndi-lookup id="contactMailSession"
                 jndi-name="java:jboss/mail/Contact"
                 expected-type="javax.mail.Session" />

<jee:jndi-lookup id="signupMailSession"
                 jndi-name="java:jboss/mail/SignUp"
                 expected-type="javax.mail.Session" />

<jee:jndi-lookup id="userMailSession"
                 jndi-name="java:jboss/mail/User"
                 expected-type="javax.mail.Session" />

我將如何自動裝配這些?

您應該只能將@Qualifier添加到正在自動裝配的字段中 - 將值設置為在JNDI中查找的Sessionid 例如:

public class BeanThatNeedsContactMailSession {

    @Autowired
    @Qualifier("contactMailSession")
    private Session mailSession;

}

public class BeanThatNeedsSignupMailSession {

    @Autowired
    @Qualifier("signupMailSession")
    private Session mailSession;

}

等等。

暫無
暫無

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

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