自己动手写一个依赖注入框架

来源:互联网 发布:淘宝推广教程视频 编辑:程序博客网 时间:2024/06/14 08:46

《Servlet和JSP学习指南》的app10e demo,介绍了自己动手写一个依赖注入框架的过程。总结一下,加深理解

1. 什么是依赖注入

假如有两个组件A 和B , A 依赖B,假设A 有一个方在是importantMethod ,它像下面这样使用B:

public class A{public void importantMethod(){B b  = ... // get an instance of Bb.usefulMethod();}}

在A 使用B 之前, A 必须获得B 的一个实例。如果B 是一个Java 实体类,那么就会像使用new关键字一样简单,但是如果B 不是Java 实体类,并且B 还有许多个实现,那就会比较麻烦了。

你必须选择一个B 实现,并且这么做还会降低A 的可重用性, 因为如果你还没有选择好B 的实现,将无法使用A。

对于要在依赖注入环境中使用的类,必须提前将它注入。一种方法是给每个依赖都创建一个set 方法,也可以在构造器或者类域中进行。

2. DAO类图

3. 交互过程


4. 依赖注入框架

5. 依赖注入框架的使用

我们在ControllerServlet中的init方法中创建依赖注入框架DependencyInjector,并start。在Process方法中调用其getObject,获得注入后的对象。在destory方法中调用其shutDown方法。

原创粉丝点击