• Spring---面向切面编程(AOP)


    IOC  AOP  Spring    不管什么的学习都要先搭建环境  先搭建环境 先搭建环境Spring 对JDK代理 和CGlib代理都支持,先JDK代理,后CGLIB代理

      1.导入依赖  导入依赖

    <dependency>
    <groupId>aspectj</groupId>
    <artifactId>aspectjweaver</artifactId>
    <version>1.5.4</version>
    </dependency>

    1.aop在spring中的作用:代理对象    被代理接口的实现类      代理的方法   方法执行前 后   即前又后     

      1.AOP在spring中的API:  *Advise()  增加的功能

           第一种:实现接口   对象的方法的拦截功能

            1.创建拦截功能:创建要在代理对象方法之前 之后   之前和之后  要增加的功能  继承 **Advise后缀的接口

            2.创建接口的实现类:

            3.创建XML配置文件: 

                    1.增加支持AOP的头部 约束 链接。

                    2.增加实现类的bean 

            4.在XML配置中配置AOP:

                    

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:aop="http://www.springframework.org/schema/aop"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
            https://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/aop
             https://www.springframework.org/schema/aop/spring-aop.xsd">
    
        <bean id="users" class="com.moon.pojo.UserService"/>
        <bean id="after" class="com.moon.pojo.Log"/>
    <!--    <bean id="before" class="com.moon.pojo.UserBeforeAdvise"/>-->
        <aop:config>
            //定义一个带拦截的位置 ,表达式扩展 <aop:pointcut id="p" expression="execution(* com.moon.pojo.UserService.*(..))"/>
            //将增强方法 应用到拦截位置。 <aop:advisor advice-ref="after" pointcut-ref="p"/> </aop:config>
    </beans>

      

    切记:  搭建环境  导入必要的包        

                   

            

         

  • 相关阅读:
    bzoj 3196/tyvj p1730 二逼平衡树
    AW201 可见的点 (欧拉函数)
    P3912 素数个数
    P1029 最大公约数和最小公倍数问题
    P1835 素数密度
    P2563 [AHOI2001]质数和分解
    P1075 质因数分解
    AW199 余数之和
    AW198 反素数
    AW197 阶乘分解
  • 原文地址:https://www.cnblogs.com/chencn/p/12336797.html
Copyright © 2020-2023  润新知