IoC和AOP的实际应用

Spring IoC 控制反转:也称为依赖注入,是面向对象编程中的一种设计理念,用来降低程序代码之间的耦合度。

//通过ClassPathXmlApplicationContext实例化Spring的上下文
        ApplicationContext context = new ClassPathXmlApplicationContext("app.xml");
        //通过ApplicationContext的getBean()方法,根据id来获取Bean的实例
        person p = (person)context.getBean("say");
        p.say();

ApplicationContext是一个接口,负责读取Spring配置文件。ClassPathXmlApplicationContext是ApplicationContxet接口的实现类,用于从classpath路径中读取Spring配置文件。

切面编程的基本概念:

   1.切面:一个模块化的横切逻辑,可能会横切多个对象

   2.连接点:程序执行中的某个具体的执行点。

   3.增强处理:切面在某个特定连接点上执行的代码逻辑.。

   4.切入点:对连接点的特征进行描述,可以使用正则表达式。增强处理和一个切入点表达式相关联,并在与这个切入点匹配的某个连接点上运行

   5.目标对象:被一个或多个切面增强的对象

   6.AOP代理:由AOP框架所创建的对象,实现执行增强处理方法等功能

   7.织入:将增强处理连接到应用程序中的类型或对象上的过程

  使用p命名空间实现属性注入

<bean id="zhang2" class="cn.bdqn.demo1.zhang" p:name="张四" p:things="在跑步">
    </bean>

     异常抛出增强

<aop:after-throwing method="afterThrowing" pointcut-ref="hhh" throwing="e"/>

    最终增强

<aop:after method="after" pointcut-ref="hhh" arg-names="joinpoint"/>

  环绕增强

<aop:around method="around" pointcut-ref="hhh" arg-names="joinpoint"/>

猜你喜欢

转载自www.cnblogs.com/xyzyw/p/9223775.html