原文链接[url]http://www.iteye.com/news/11098-java-ee-6-dependency-injection[/url]
Java EE中的 上下文和依赖注入(Contexts和Dependency Injection即CDI)是最近即将完成的Java EE 6平台的关键部分。通过Java JSR 299规范来看,CDI已经成为Java EE平台下一代类型安全的依赖注入方式。Java JSR 299的目标是综合各种最佳的解决方案,例如Seam,Guice和Spring等框架的优势所在,将这些优势整合在一起的同时添加一些创新。
CDI 和 Java EE
在最基础的form中,CDI注入的示例:
Java代码
1.@Stateless
2.public class BidService {
3. @Inject
4. private BidDao bidDao;
5.
6. public void addBid (Bid bid) {
7. bidDao.addBid(bid);
8. }
9.}
10.
11.public class DefaultBidDao implements BidDao {
12. @PersistenceContext
13. private EntityManager entityManager;
14.
15. public void addBid (Bid bid) {
16. entityManager.persist(bid);
17. }
18.}
19.
20.public interface BidDao {
21. public void addBid (Bid bid);
22.}
Java EE中的 上下文和依赖注入(Contexts和Dependency Injection即CDI)是最近即将完成的Java EE 6平台的关键部分。通过Java JSR 299规范来看,CDI已经成为Java EE平台下一代类型安全的依赖注入方式。Java JSR 299的目标是综合各种最佳的解决方案,例如Seam,Guice和Spring等框架的优势所在,将这些优势整合在一起的同时添加一些创新。
CDI 和 Java EE
在最基础的form中,CDI注入的示例:
Java代码
1.@Stateless
2.public class BidService {
3. @Inject
4. private BidDao bidDao;
5.
6. public void addBid (Bid bid) {
7. bidDao.addBid(bid);
8. }
9.}
10.
11.public class DefaultBidDao implements BidDao {
12. @PersistenceContext
13. private EntityManager entityManager;
14.
15. public void addBid (Bid bid) {
16. entityManager.persist(bid);
17. }
18.}
19.
20.public interface BidDao {
21. public void addBid (Bid bid);
22.}