zoukankan      html  css  js  c++  java
  • 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>

      

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

                   

            

         

  • 相关阅读:
    每日总结
    每日总结
    每日总结
    每日总结
    每周总结
    每日总结
    10.20
    10.19
    10.18
    10.17
  • 原文地址:https://www.cnblogs.com/chencn/p/12336797.html
Copyright © 2011-2022 走看看