gpt4 book ai didi

java - 如何在 Spring 中从 JNDI 引用多个 bean?

转载 作者:行者123 更新时间:2023-11-29 05:31:29 24 4
gpt4 key购买 nike

我已经在 J​​Boss EAP 6.1 上配置了一个邮件 session 。我正在使用 Spring 4。我正在使用这样的查找:

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

如果我在 JBoss 服务器上再添加三个邮件 session 并在 Spring XML 配置文件中再添加三个查找会怎样?我如何将一个 bean 注入(inject)另一个?我无法向 <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" />

我将如何 Autowiring 这些?

最佳答案

您应该能够将 @Qualifier 添加到正在 Autowiring 的字段 - 将值设置为 Sessionid > 这是在 JNDI 中查找的。例如:

public class BeanThatNeedsContactMailSession {

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

}

public class BeanThatNeedsSignupMailSession {

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

}

等等

关于java - 如何在 Spring 中从 JNDI 引用多个 bean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20956537/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com