xml实现AOP
1.使用<aop:config></aop:config>
2.首先我们需要配置<aop:aspect></aop:aspect>,就是配置切面
2.1首先配置切面的id,也就是切面叫什么名称,我们起名字为id="myLogAspect"
2.2我们的切面是由哪一个类来做的,ref="logAspect",ref属性值是spring所管理的类(bean)
3.配置pointcut,下面需要配置,我们要在哪一些类里面加入这些操作。或者说在那些类里面加入切面,id=""指明我们是在哪些类中加入,expression
3.1<aop:pointcut id="logPointCut" expression="execution(* org.zttc.itat.spring.dao.*.add*(..))||
execution(* org.zttc.itat.spring.dao.*.delete*(..))||
execution(* org.zttc.itat.spring.dao.*.update*(..))" />
4.配置before,method=""指明,我们要调用的是切面(切面是ref="logAspect",前面已经配置过了)里面的哪一个方法 ,point-ref=""表明我们要引入哪一个PointCut(id="logPointCut",前面也已经配置过了),也就是说我们的logStart方法会在pointcut中配置的那些类中的那些方法中加入。
4.1<aop:before method="logStart" point-ref="logPointCut">
4.2<aop:before method="logEnd" point-ref="logPointCut">
4.3<aop:before method="logAround" point-ref="logPointCut">
注解和xml哪个方便一些?
使用注解的时候,我们需要为每一个method(before,after,around)都配置exexution,而使用xml我们只需要配置一次就可以了,从而xml更方便
xml实现AOP的更多相关文章
- 基于XML的AOP配置
创建spring的配置文件并导入约束 此处要导入aop的约束 <?xml version="1.0" encoding="UTF-8"?> < ...
- spring的基于xml的AOP配置案例和切入点表达式的一些写法
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...
- Spring中基于xml的AOP
1.Aop 全程是Aspect Oriented Programming 即面向切面编程,通过预编译方式和运行期动态代理实现程序功能的同一维护的一种技术.Aop是oop的延续,是软件开发中的 一个热点 ...
- Spring、XML配置AOP
新建一个AOP类: public class MyInterceptor2 { public void doAccessCheck(){ System.out.println("前置通知 & ...
- Spring 使用xml配置aop
1.xml文件需要引入aop命名空间 2.xml内容: <?xml version="1.0" encoding="UTF-8"?> <bea ...
- Spring初学之xml实现AOP前置通知、后置通知、返回通知、异常通知等
实现两个整数的加减乘除,在每个方法执行前后打印日志. ArithmeticCalculator.java: package spring.aop.impl.xml; public interface ...
- applicationContext.xml配置AOP切面编程
Computer.java package com.wh.aop2; public class Computer { public void play01(){ System.out.println( ...
- 基于 XML 的 AOP 配置(1)
本文连接:https://www.cnblogs.com/qzhc/p/11969734.html 接下来我将用一个很简单的实例 1. 环境搭建 1.1. 第一步:准备必要的代码 业务层代码: Acc ...
- Spring基于XML配置AOP
目录结构: D:\Java\IdeaProjects\JavaProj\SpringHelloWorld\src\cn\edu\bjut\service\StudentService.java pac ...
随机推荐
- 移动端click时间、touch事件、tap事件详解
一.click 和 tap 比较 两者都会在点击时触发,但是在手机WEB端,click会有 200~300 ms,所以请用tap代替click作为点击事件. singleTap和doubleTap 分 ...
- C语言遇到的小问题
堆栈区内存大小,2M或者4M,如果char够用,你就按照char去开,就只有int的1/4啦 printf("%s",s[i])不能运行 case 's': s = va_arg( ...
- sqlserver修改一个列
--修改一个列alter table UserInfo alter Column [Address] nvarchar(64) null
- iOS开发笔记--UILabel的相关属性设置
在iOS编程中UILabel是一个常用的控件,下面分享一下UILabel的相关属性设置的方法. 很多学习iOS6编程都是从storyboard开始,用到UILabel时是将控件拖到storyboard ...
- AIX 常用命令 第一步(uname,lspv)
如何知道自己在运行单处理器还是多处理器内核? /unix 是指向已启动内核的符号链接.要了解正在运行什么内核模式,可输入 ls -l /unix 并查看 /unix 链接到什么文件.下面是 ls -l ...
- cf524C The Art of Dealing with ATM
ATMs of a well-known bank of a small country are arranged so that they can not give any amount of mo ...
- centons7编译安装zabbix3.4【转https://www.cnblogs.com/kowloon/p/7771495.html】
或者参考官方文档:https://www.zabbix.com/documentation/3.4/manual/installation/install 一.预编译环境准备 1.lamp安装和启动 ...
- 45深入理解C指针之---指针释放
一.size_t:用于安全表示长度,所有平台和系统都会解析成自己对应的长度 1.定义:size_t类型表示C中任何对象所能表示的最大长度,是个无符号整数:常常定义在stdio.h或stdlib.h中 ...
- llinux 定时器 转载自 http://blog.chinaunix.net/uid-11848011-id-96374.html
这篇文章主要记录我在试图解决如何尽可能精确地在某个特定的时间间隔执行某项具体任务时的思路历程,并在后期对相关的API进行的归纳和总结,以备参考. 问题引出 很多时候,我们会有类似“每隔多长时间执行某项 ...
- js-浅显基础-正则表达式集
今天进博客园,忽然发现我也是有粉丝的人啦!!!!!!!!谢谢谢谢关注(爱心爱心) 本来不想做这个笔记的,但是每次都百度我自己都烦死了,所以还是自己整理一下方便我后期使用: 独笑笑不如众笑笑,放轻松点 ...