zoukankan      html  css  js  c++  java
  • AOP:Spring的xml配置方式

    <?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 http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
           http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
        
        <bean name="userManager" class="com.wangcf.manager.UserManagerImp"/>
        <bean name="logManager" class="com.wangcf.manager.aspect.LogManager"/>
        
        <aop:config>
            <aop:aspect id="logMgrAspect" ref="logManager">
                <aop:before method="addLogBefore" pointcut="execution(* com.wangcf.manager.*.add*(..))"/>
                <aop:after method="addLogAfter" pointcut="execution(* com.wangcf.manager.*.add*(..))"/>
            </aop:aspect>
        </aop:config>
    </beans>
    //切面类
    package
    com.wangcf.manager.aspect; import org.aspectj.lang.JoinPoint; public class LogManager { public static void addLogBefore(){ System.out.println("添加日志 Before..."); } public void addLogAfter(){ System.out.println("添加日志记录 After..."); } public void addLogAfterReturning(){ System.out.println("添加日志记录 AfterReturning..."); } public void addLogAfterThrowing(){ System.out.println("添加日志记录 AfterThrowing..."); } public void addLogAround(JoinPoint joinPoint){ System.out.println("添加日志记录 AfterAround start..."); System.out.println(joinPoint.getTarget()); System.out.println("添加日志记录 AfterAround end..."); } }

    测试类:

    package com.wangcf.test;
    
    import org.springframework.beans.factory.BeanFactory;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    import com.wangcf.manager.IUserManager;
    import com.wangcf.po.User;
    
    
    public class TestAction {
        public static void main(String[] args) {
            BeanFactory factory=new ClassPathXmlApplicationContext("applicationContext.xml");
            IUserManager userManager=(IUserManager) factory.getBean("userManager");
            //输出代理
            System.out.println(userManager.getClass().getName());
            userManager.addUser();
            System.out.println("=================");
        }
    }

    输出:

  • 相关阅读:
    JavaWeb 输出九九乘法表,三角形,菱形
    模拟ATM机将输入的数据插入数据库
    JDBC连接数据库
    执行动态语句
    python深拷贝和浅拷贝
    redis数据库操作
    pymysql数据库操作
    linux 从Python 2.7升级至Python3.6.1
    模块---常用模块
    模块---安装模块
  • 原文地址:https://www.cnblogs.com/-beauTiFul/p/6347167.html
Copyright © 2011-2022 走看看