第一:.struts2主要用到代理模式,产生代理action(看struts的执行过程可以知道)
第二.hibernate主要用到的是工程模式,session-factory工厂创建session对象(session工厂)
第三:.spring用到的反射创建bean对象,bean对象是动态代理模式中的代理对象(bean工厂)
1.控制反转:(把创建对象和建立关关系的权利交给第三方工厂)
将控制权交给自定义的第三方工厂类MyBeabFactory(工厂类是通过静态方法封装的是创建对象的控制权,把创建对象的权利交给了工厂)工厂类里面写个方法能够返回调用类的对象,工厂对象是代理对象,目标对象是被代理对象。
2.在控制反转中用到了工厂模式(主要是创建对象)、代理模式(主要有代理对象和目标对象)