【Spring-AOP-学习笔记-3】@Before前向增强处理简单示例

项目结构



程序代码


HelloImpl.java

WorldImpl.java




定义切面类


  1. package org.crazyit.app.aspect;
  2. import org.aspectj.lang.annotation.Aspect;
  3. import org.aspectj.lang.annotation.Before;
  4. // 定义一个切面
  5. @Aspect
  6. public class AuthAspect
  7. {
  8. // 匹配org.crazyit.app.service.impl包下所有类的、
  9. // 所有方法的执行作为切入点
  10. @Before("execution(* org.crazyit.app.service.impl.*.*(..))")
  11. public void authority()
  12. {
  13. System.out.println("模拟执行权限检查");
  14. }
  15. }



配置


  1. <?xml version="1.0" encoding="GBK"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:aop="http://www.springframework.org/schema/aop"
  6. xsi:schemaLocation="http://www.springframework.org/schema/beans
  7. http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
  8. http://www.springframework.org/schema/context
  9. http://www.springframework.org/schema/context/spring-context-4.0.xsd
  10. http://www.springframework.org/schema/aop
  11. http://www.springframework.org/schema/aop/spring-aop-4.0.xsd">
  12. <!-- 指定自动搜索Bean组件、自动搜索切面类 -->
  13. <context:component-scan base-package="org.crazyit.app.service
  14. ,org.crazyit.app.aspect">
  15. <context:include-filter type="annotation"
  16. expression="org.aspectj.lang.annotation.Aspect"/>
  17. </context:component-scan>
  18. <!-- 启动@AspectJ支持 -->
  19. <aop:aspectj-autoproxy/>
  20. </beans>


测试




链接:
@AfterThrowing增强处理简单示例http://www.cnblogs.com/ssslinppp/p/4633595.html 
《@AfterReturning增强处理简单示例》http://www.cnblogs.com/ssslinppp/p/4633496.html 
《@After后向增强处理简单示例》http://www.cnblogs.com/ssslinppp/p/4633427.html 
《@Before前向增强处理简单示例》 http://www.cnblogs.com/ssslinppp/default.html?page=7 









附件列表

    原文地址:https://www.cnblogs.com/ssslinppp/p/4633364.html