• SpringMvc aop before


    1.config.xml配置文件

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
     "http://www.springframework.org/dtd/spring-beans.dtd">
    <beans>
    
      <bean id="logBefore" class="com.gc.action.LogBefore"></bean>
      <bean id="timeBook" class="com.gc.action.TimeBook"></bean>  
      <bean id="logBeforeAdvisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
       <!-- advice 要加入的代码 -->
      <property name="advice">
      <ref bean="logBefore"></ref> 
      </property>
      
      <!--指定do开头的方法 -->
      <property name="patterns">
      <value>.*do.*</value>
      </property>
      </bean>
      
      <!-- LogBefore -->
      <bean id="logProxy1" class="org.springframework.aop.framework.ProxyFactoryBean">
    <!-- 该配置也可以去掉 -->
      <property name="proxyInterfaces">
       <value>com.gc.action.ITimeBook</value>
      </property>
      
     <!-- 被代理的对象 -->
       <property name="target">
       <ref bean="timeBook"></ref>
      </property>
      <!--引入代理配置 -->
       <property name="interceptorNames">
        <list>
        <value>logBeforeAdvisor</value>
        </list>
      </property>
      
      
      </bean>
      </beans>
    View Code

    2.LogBefore

    package com.gc.action;
    
    import java.lang.reflect.Method;
    
    import org.springframework.aop.MethodBeforeAdvice;
    
    public class LogBefore implements MethodBeforeAdvice{
    
        @Override
        public void before(Method arg0, Object[] arg1, Object arg2)
                throws Throwable {
            System.out.println("before aop 前");
            
            // TODO Auto-generated method stub
            
            
        }
    
    }
    View Code

    3.ITimeBook

    package com.gc.action;
    
    public interface ITimeBook {
    
        public void doAudit(String name);
    }
    View Code

    4.TimeBook

    package com.gc.action;
    
    public class TimeBook implements ITimeBook {
    
        @Override
        public void doAudit(String name) {
            // TODO Auto-generated method stub
            System.out.println("laaaaaaaaaaaaa");
        }
    
    }
    View Code

    5.测试

      ApplicationContext context=new FileSystemXmlApplicationContext("config-before.xml");
                  ITimeBook tb=(ITimeBook)context.getBean("logProxy1");
                  tb.doAudit("xiaox");
    View Code
  • 相关阅读:
    【python爬虫实战】使用词云分析来分析豆瓣影评数据
    【python爬虫实战】爬取豆瓣影评数据
    【个人博客设计】开发工具篇
    使用xmake优雅地描述工程
    使用lua实现try-catch异常捕获
    tbox新增stackless协程支持
    如何快速构建一个简单的程序
    手写数字识别系统之倾斜矫正
    手写数字识别系统之图像分割
    聊聊原子操作那些事
  • 原文地址:https://www.cnblogs.com/tiancai/p/6734614.html
Copyright © 2020-2023  润新知