由于 Java EE 5 没有 CDI,那么 DI 在这里如何工作?
可以在非 EJB 类中注入@EJB
EJB 吗?可以在非 EJB 的类中EntityManager
注入(容器管理的不是本地资源)吗?或者在非 EJB 类中引入资源的唯一解决方案是通过 JNDI 查找?@PersistenceContext
EntityManager
我所说的非 EJB 类是指没有用@Stateless
/@Statefull
或其他注释的类。
由于 Java EE 5 没有 CDI,那么 DI 在这里如何工作?
可以在非 EJB 类中注入@EJB
EJB 吗?可以在非 EJB 的类中EntityManager
注入(容器管理的不是本地资源)吗?或者在非 EJB 类中引入资源的唯一解决方案是通过 JNDI 查找?@PersistenceContext
EntityManager
我所说的非 EJB 类是指没有用@Stateless
/@Statefull
或其他注释的类。
取自:http ://www.oracle.com/technetwork/articles/javaee/injection-141192.html
请记住,Java EE 5 平台容器只有在用于容器管理的组件(例如 EJB bean、Servlet 和 JavaServer Pages (JSP) 技术标记处理程序)上时才能透明地处理注入。
onjava有一篇文章:http ://onjava.com/pub/a/onjava/2006/01/04/dependency-injection-java-ee-5.html
它提供了一个可读的表格,其中包含哪些托管组件(每个容器)支持注入什么类型的资源。