Spring
2019-11-18 本文已影响0人
青楼楼长
IOC原理:ioc就是翻转控制,帮我们创建对象,不用自己区创建,我们通过配置bean,和bean之间的依赖关系,通过反射机制创建对象放入实例池中,这个池是hashmap实现的,通过beanFactory.getbeanName(key)就可以获得对应的实例。Bean的作用域:有五个单例singleton,原型(prototype),request,session,globleSession,其中单例在多线程下不安全且在IOC容器共享这一个bean,原型则是每次使用都创建一个,request是一次请求创建一个同一个请求使用一个,session同理,globalSession也是一样的。Bean的生命周期:1.实例化 2.IOC注入 3.setBeanName 4.BeanFactoryAware实现,5.初始化方法之前,6.初始化方法 7.初始化方法执行后 8.使用bean,容器关闭,bean Destory销毁。
AOP:面向切面编程,使得各个业务代码分离,降低耦合性,采用动态代理实现,主要有JDK自带的proxy类基于接口(被代理对象的类加载器,被代理对象的实现的接口,InvocatinonHandler的匿名实现方法【这个方法里面有三个参数代理的对象,方法,以及方法的参数数组】)还有一种是第三方的cglib,基于子类。还有就是关于连接点(执行的方法),切入点(加强的方法),