Spring的自动装配

自动装配包含如下四种类型

byName:在IoC容器中寻找与Bean中属性名相同的id对应的Bean,如果找不到相符合的Bean,则该属性没有被装配上。

byType:在IoC容器中寻找与Bean中属性相同类型的Bean,如果找不到相符合的Bean,则改属性没有被装配上。如果找到多个相符合的Bean,则会抛出异常。

constructor:在IoC容器中寻找与Bean中构造函数参数一致的一个或多个Bean。如果存在不确定的Bean,则会抛出异常。

autodetect:自动模式,首先尝试使用constructor来自动装配,然后使用byType方式。


Spring面向切面编程介绍

面向切面编程(Aspect Oriented Programming及AOP)是Spring中的另一种核心技术,

AOP提供另一种角度来思考程序结构,通过使用AOP可以给面向对象编程提供强大的辅助功能,

在Spring框架中,提供了对AOP的支持,Spring的AOP框架允许将分散在系统中的模块集中起来,

通过AOP中的切面实现,并通过Spring中强大的切入点机制在程序中随时引入切面,

通过使用Spring的AOP框架,就可以给系统中添加强大的服务,例如身份认证、声明式失误管理等服务。


例子:顾客买东西


前置通知:欢迎光临本店

          顾客买东西

 

后置通知:顾客买东西

          欢迎再次光临本店!

 

拦截通知:前置信息

          执行目标对象方法

 后置信息

 


创建异常通知:抛出异常后处理