简单模拟spring di
spring di(即依赖注入)的原理个人理解是这样子的,先读取配置文件,在通过解析xml将有用的信息扣取出来,再通过反射机制来实现类或方法的实例化。
今天我模拟了两种注入方式一种是注入bean,另一种是注入一个factory.对于工厂模式本人觉得还蛮好用的,只要搭建起了架构感觉管理起来挺容易的。还有bridge模式在开发中也是很便于管理的。所以我在这个小例子里面结合了bridge和factory模式。
下面是代码:
1,UserDao:接口
7,TestDI:测试类,用来测试两种注入方式public class TestDI {/** * @测试模拟spring DI程序 */public static void main(String[] args) {/** * 测试bean注入模式 */AnalogApplicationContext alAcOracle = new AnalogApplicationContext("applicationContext-di.xml");UserDao userdaoOracle = (UserDao)alAcOracle.getBean("userDaoOracle");userdaoOracle.add();/** * 测试factory注入模式 */AnalogApplicationContext alAcMySql = new AnalogApplicationContext("applicationContext-di.xml");UserDao userdaoMySql = (UserDao)alAcMySql.getBean("userDaoMySql");userdaoMySql.add();}}