在jQuery中添加AOP的功能,可以使用jquery plugin.
http://code.google.com/p/jquery-aop/。使用非常简单,包含.js文件,然后调用添加通知的函数。
一共有四种通知:前置通知,后置通知,环绕通知和引入。
前置通知:before (Map pointcut, Function advice) return Array<Function>
在指定织入点创建一个前置通知。通知在被织入的方法之前执行,不能改变原方法的行为或阻止它执行。
参数:
pointcut: 织入点对象
target:被织入的对象
method:被织入的方法名字
advice: 通知函数
例:
jQuery.aop.before( {target: window, method: 'MyGlobalMethod'},
function() {
alert('About to execute MyGlobalMethod');
}
);
jQuery.aop.before( {target: window, method: /My/},
function() {
alert('About to execute one of my global methods');
}
);
jQuery.aop.before( {target: String, method: 'indexOf'},
function(index) {
alert('About to execute String.indexOf on: ' + this);
}
);
后置通知:after (Map pointcut, Function advice) return Array<Function>
通知(advice)在定义的切入点后面执行(pointcut),并接收切入点方法运行后的返回值作为参数
参数:
pointcut: 织入点对象
target:被织入的对象
method:被织入的方法名字。
advice: 通知函数,并接受切入点方法执行后的返回值作为参数
例:
jQuery.aop.after( {target: window, method: 'MyGlobalMethod'},
function(result) {
alert('Returned: ' + result);
}
);
jQuery.aop.after( {target: String, method: 'indexOf'},
function(index) {
alert('Result found at: ' + index + ' on:' + this);
}
);
环绕通知:around (Map pointcut, Function advice) return Array<Function>
在指定切入点处创建一个环绕通知,此类型的同志通过调用innovation.proceed()能够控制切入点方法的执行,也能在函数执行前更改它的参数。
参数:
pointcut: 织入点对象
target:被织入的对象
method:被织入的方法名字。
advice: 通知函数,有一个参数innovation。包含.proceed()方法和两个属性:.argurments及.method
例:
jQuery.aop.around( {target: window, method: 'MyGlobalMethod'},
function(invocation) {
alert('# of Arguments: ' + invocation.arguments.length);
return invocation.proceed();
}
);
jQuery.aop.around( {target: String, method: 'indexOf'},
function(invocation) {
alert('Searching: ' + invocation.arguments[0] + ' on: ' + this);
return invocation.proceed();
}
);
jQuery.aop.around( {target: window, method: /Get(\d+)/},
function(invocation) {
alert('Executing method ' + invocation.method);
return invocation.proceed();
}
);
引入:introduction (Map pointcut, Function advice) return Array<Function>
此类型的通知的方法(advice)将替代制定切入点的方法。要恢复原方法,唯有卸载通知。
pointcut: 织入点对象
target:被织入的对象
method:被织入的方法名字。
advice: 通知函数。
例:
jQuery.aop.introduction( {target: String, method: 'log'},
function() {
alert('Console: ' + this);
}
);
分享到:
相关推荐
jquery-aop 向 jQuery 添加面向方面编程 (AOP) 的功能。 介绍 jQuery AOP 是一个非常小的插件,它为 javascript 添加了功能。 它允许向任何全局或实例对象添加( Before 、 After 、 After Throw 、 After finally ...
Spring框架的关键组件之一是面向方面编程(AOP)框架。 面向方面的编程需要将程序逻辑分解成不同的部分。 此教程将通过简单实用的方法来学习Spring框架提供的AOP/面向方面编程。
**Spring AOP 入门教程** 在编程领域,Spring AOP(Aspect Oriented Programming,面向切面编程)是Spring框架中的一个重要组成部分,它为开发者提供了一种强大的方式来管理横切关注点,如日志、事务管理、安全性等...
《Java程序设计简明教程》是一本专注于Java编程语言学习的教材,旨在为初学者提供一个清晰、简洁的入门路径。教程可能涵盖了Java语言的基础概念、语法结构、面向对象编程原则,以及实际应用中的关键技术和工具。在...
Spring AOP 使用教程 Spring AOP(Aspect-Oriented Programming)是一种编程技术,能够帮助开发者在软件系统中实现一些通用的功能,如日志记录、安全检查、事务管理等。下面是关于 Spring AOP 使用教程的详细知识...
**AOP(面向切面编程)框架教程** AOP,全称为Aspect-Oriented Programming,是一种编程范式,旨在减少代码的重复性,提高代码的模块化和可维护性。在Java开发中,AOP框架如Spring AOP,使得开发者可以方便地实现横...
### Spring AOP中文教程知识点详解 #### 一、AOP概览 面向切面编程(Aspect-Oriented Programming,简称AOP)是一种编程范式,它允许开发者将横切关注点(cross-cutting concerns)从业务逻辑中分离出来。横切关注...
spring AOP的一些教程和专业名词的解释
本视频教程将深入探讨AOP的核心概念以及如何在Spring框架中应用它。 AOP的核心概念包括切面(Aspect)、连接点(Join Point)、通知(Advice)、切入点(Pointcut)、织入(Weaving)等。切面是关注点的模块化,...
《Spring2.5开发简明教程中文版》是针对初学者设计的一份全面而实用的教程,涵盖了Spring框架的核心概念和基本用法。本教程共分为1-4章,每章均配有书签,便于读者查阅和复习。下面将详细阐述这四章中的主要知识点。...
"Spring中文教程pdf.pdf"可能包含Spring框架的详细教程,涵盖了Spring的基础知识,如IoC容器、AOP、MVC,以及Spring Boot、Spring Cloud等相关内容。读者可以通过这份教程深入了解Spring的各个组件及其用法,提升...
《Castle.Net AOP教程》是针对Castle项目中的AOP(Aspect Oriented Programming,面向切面编程)框架的详细学习指南。这个教程以全英文的形式,深入浅出地讲解了 Castle.Net AOP 的核心概念、接口和类,为开发者提供...
AOP详解,详细结束了AOP。不要分,随便下。方便大家学习。
在给出的XML配置中,`<aop:config>`元素开启AOP支持,而`<aop:aspect>`元素用于定义切面,其内部通过`<aop:pointcut>`定义切点,并通过`<aop:before>`和`<aop:after>`指定通知。 为了使用这些配置,我们需要在代码...
**Spring简明教程** Spring框架是Java开发中最广泛使用的轻量级开源框架之一,它以其模块化、松耦合的设计理念,极大地简化了企业级应用的开发。本教程将深入探讨Spring的核心特性,包括依赖注入(Dependency ...
spring-aop-1.1.1.jar spring-aop-1.2.6.jar spring-aop-1.2.9.jar spring-aop-2.0.2.jar spring-aop-2.0.6.jar spring-aop-2.0.7.jar spring-aop-2.0.8.jar spring-aop-2.0.jar spring-aop-2.5.1.jar spring-aop-...
T22.5_Spring AOP java 经典教程 经典教材
**AOP(面向切面编程)框架教程** 在软件开发中,面向切面编程(Aspect Oriented Programming,简称AOP)是一种编程范式,旨在提高代码的可复用性和模块化,通过将关注点分离来简化系统设计。AOP允许程序员定义“切...