gpt4 book ai didi

java - CDI 和 JNDI 服务有什么关系?

转载 作者:行者123 更新时间:2023-11-30 10:48:49 24 4
gpt4 key购买 nike

据我了解“pre-CDI”EJB 和资源注入(inject)解决方案(@EJB@Resource 和其他,要清楚)使用 JNDI 服务来通过注册 JNDI 定位容器“已知”的对象,然后将它们注入(inject)到请求的位置。

CDI 相反,依赖于 bean-discovery-mode 参数(ALLANNOTATED)来发现需要管理的 bean。但是这个过程实际上是如何执行的呢?运行时扫描……什么? JNDI根本就没有参与吗?

我觉得我对整个机制有些不对劲...

最佳答案

bean 发现过程在 CDI specification 中有详细描述。 .基本上,CDI 容器会扫描 bean 部署文件以查找带有特定注释的类。

JNDI 根本不参与。与 EJB 不同,CDI bean 通常不能通过 JNDI 查找。

只能在java:comp/BeanManager 的名称下查找BeanManager 本身。 ,但这几乎从来不是必需的,除非您需要从非托管代码访问托管 bean。

关于java - CDI 和 JNDI 服务有什么关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35632593/

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