前面补充!

ApplicationContext容器:



    当容器被创建时,会自动将容器中所有的Bean创建。



    优点:系统响应速度快。



    不足:浪费系统资源。



 



BeanFactory容器:



    当容器被创建时,并不会自动将容器中的任何Bean创建。只有当真正使用该Bean时,才会由容器创建这个Bean。



    优点:节省系统资源。



    不足:相对来说,系统响应速度慢。



AOP



AOP,Aspect OrientProgramming,面向切面编程。是一种概念,是一种思想,其实现者很多,Spring就是实现者之一。



         AOP是OOP的一种补充。OOP是从静态角度考虑程序的结构,而AOP是动态角度考虑程序的运行过程。



         Spring用于降低耦合度。IoC用于降低主业务逻辑之间的耦合度;AOP用于降低主业务逻辑与系统级服务(交叉业务逻辑)间的耦合度,将系统级服务在运行时织入到主业务逻辑之中。



         Spring的AOP的底层工作原理,是使用动态代理对主业务进行增强。而动态代理使用的是JDK的Proxy与CGLIB两种动态代理。



切面(Aspect)



切面就是交叉业务逻辑,就是要对主业务进行增强的部分。AOP编程中常见的切面有两种:通知、顾问。



织入(Weaving)



将切面切入到主业务逻辑中的过程,称为织入。



连接点(JoinPoint)



可以织入切面的目标类中的目标方法,称为连接点。



切入点(Pointcut)



真正织入切面的目标类的目标方法,称为切入点。切入点一定是连接点。



目标对象(Target)



用于被增强的对象,称为目标对象。



目标类的对象,就是目标对象。



主业务逻辑所在的类的对象,就是目标对象。



通知(Advice)



是一种切面,可以完成简单的织入功能。例如,可以指定织入的时间点。



通知可以指定织入的时间点,切入点指定的是织入的位置。



(1)  顾问(Advisor)



(2)  引入(Introduction)