在spring的配置中,会用到这两个标签.那么他们的区别是什么呢?
<bean id="testAdvice" class="com.myspring.app.aop.MyAdvice"/>   //切面代码
使用<aop:aspect>配置时,
  如果切面代码是自动注入的bean,那么<aop:aspect>的ref属性直接写bean的注入名字就可以了!
<aop:config>
<aop:aspect ref="testAdvice" id="testAspect">
<aop:pointcut expression="(execution(* com.myspring.app.aop.TestPoint.*(..)))" id="testPointcut"/>
<aop:before  method="doBefore" pointcut-ref="testPointcut"/>
</aop:aspect>
</aop:config>
<aop:config>
<aop:pointcut expression="(execution(* com.myspring.app.aop.TestPoint.*(..)))"  id="mypoint"/>
<aop:advisor advice-ref="testAdvice" pointcut-ref="mypoint"/>
</aop:config>
注意:2种格式的书写次序.
=========================================================================
package com.myspring.app.aop;
import java.lang.reflect.Method;
import org.aspectj.lang.JoinPoint;
import org.springframework.aop.MethodBeforeAdvice;
/**
* 方法前置通知
* @author Michael
*
*/
@Component("myAdvice") //如果是自动装配,在定义切面的时候直接写在ref属性里就可以了
public class MyAdvice implements MethodBeforeAdvice{
//如果使用aop:advisor配置,那么切面逻辑必须要实现advice接口才行!否则会失败!
@Override
public void before(Method method, Object[] args, Object target) throws Throwable {
System.out.println("前置通知");
}
//如果是<aop:aspect>配置,编写一般的方法就可以了,然后在切面配置中指定具体的方法名称!
public void doBefore(JoinPoint point) throws Throwable {
}
}

spring Aop中aop:advisor 与 aop:aspect的区别相关推荐

  1. 聊聊spring aop中的advisor组件

    1.Advisor的组成结构 在spring aop中Advisor是一个接口,代表被拦截方法需要增强的逻辑. Advisor通常由另两个组件组成--Advice接口和Pointcut接口,其中Adv ...

  2. Spring框架中的核心技术之AOP

    目录 1. 什么是AOP? 2. 实现AOP技术的框架有哪些? 2.1 Spring框架中的AOP技术 2.2 Aspectj框架 2.3 小结 3. Aspectj框架中的使用AOP的方式 4. A ...

  3. AOP 详解 、AOP 中通知类型 、AOP 两种实现方式(Schema-base 和 AspectJ)

    一.AOP AOP:中文名称面向切面编程 英文名称:(Aspect Oriented Programming) 正常程序执行流程都是纵向执行流程 3.1 又叫面向切面编程,在原有纵向执行流程中添加横切 ...

  4. Spring MVC中@RequestParam和@PathVariable批注之间的区别?

    Spring MVC框架是在Java世界中开发Web应用程序最流行的框架之一,它还提供了一些有用的注释,可以从传入的请求中提取数据并将请求映射到控制器,例如@ RequestMapping,@ Req ...

  5. spring boot中@ResponseBody等注解的作用与区别

    在使用springmvc框架的时候,在处理json的时候需要用到spring框架特有的注解@ResponseBody或者@RestController注解,这两个注解都会处理返回的数据格式,使用了该类 ...

  6. Spring框架中PO,BO,VO和POJO的区别

    PO:persistent object 持久对象 1 .有时也被称为Data对象,对应数据库中的entity,可以简单认为一个PO对应数据库中的一条记录. 2 .在hibernate持久化框架中与i ...

  7. Spring之面向切面编程(AOP)

    目录 1. 面向切面编程 2. AOP核心概念 3. AOP的实现 ​4. Spring 对AOP支持 4.1 支持@Aspect 4.2 声明一个切面 4.3 声明一个切入点 4.4 声明增强 5. ...

  8. spring AOP中 aop:advisor 与 aop:aspect 的区别

    在开发过程中,不少有Spring Aop的使用, 在面向切面编程时,我们会使用< aop:aspect>: 在进行事务管理时,我们会使用< aop:advisor>. 那么,对 ...

  9. Spring AOP中是如何注册Advisor的?

    前置博文: Spring AOP中如何为Bean创建代理? Spring AOP中是如何注册Advisor的? Spring AOP如何为目标方法创建拦截器链? Spring AOP拦截器调用的实现 ...

最新文章

  1. 463. Island Perimeter 岛屿的周长
  2. python压缩映射过滤器
  3. american fuzzy lop 介绍
  4. AITO问界 M5正式交付:搭载华为鸿蒙系统 24.98万元起
  5. 【Hadoop】Hadoop1.X版本与Hadoop2.X的区别
  6. NUC1170 加农炮
  7. 面向对象之多态、多态性
  8. su组件在什么窗口_动态组件:你坐好,我让SU模型自己开门
  9. Failed to prettify component
  10. 老师让小宁同学查看一个网页的源代码,但小宁同学发现鼠标右键好像不管用了
  11. 2014世界10大DRAM公司
  12. 普通型母函数和指数型母函数
  13. MySQL-innobackupex备份工具
  14. svc预测概率_Kaggle平台Titanic生存率预测项目(TOP3%)
  15. minecraft_死后如何保存Minecraft物品(和其他聪明技巧)
  16. C语言 实现长整数的相加
  17. 【附源码】计算机毕业设计SSM实验室预约管理系统
  18. 群签名技术的理解和总结
  19. 永远不要去依赖别人_别太依赖一个人的说说 不依赖别人的经典语录_经典语录...
  20. Activiti6--入门学习--结束事件

热门文章

  1. oracle面试题答案,Oracle面试题笔试题及参考答案
  2. ief12执行一次js才有效_IE浏览器打开页面js失效 开启F12后刷新正常
  3. 针对list集合的操作,按照某一字段,对另一个字段进行归类
  4. iOS中assign和weak的区别
  5. 哈希算法-SHA-256-过程详解
  6. 移动目标定位技术笔记1:WiFi、ZigBee、UWB技术
  7. 敏捷转型(2)——企业文化
  8. c语言单链表的创建(头插法和尾插法)
  9. 安卓25:Android studio 计时器chronometer的使用
  10. 图片翻译成中文其实很简单,只需这几步