AOP初识

1)什么是AOP:面向切面编程

2)AOP模型及术语:切点、切面、通知等等,具体百度。

3)AOP的实际应用场景

1))统计某一个方法的执行时长

传统的做法是在要统计的方法的首尾各统计一下时间取差值,那么问题来了,如果有n多个方法

呢?

AOP的做法:利用环绕通知,通过注解反射得到统计的方法,然后也是取差值。这样只要某个方

加了特定的统计时间相关的注解就可以统计它的时间。当然也可以反射出方法所在类等其它相

关信息。

2))统计方法的异常、日志等。通过AspectJ的异常通知。

3))增强某个类的方法

时间: 2024-08-07 23:20:58

AOP初识的相关文章

初识Aop(面向切面编程)

AOP面向方面/面向切面编程 AOP将分散在系统中的功能块放到一个地方- 切面 可以声明式的定义何时何地应用这些功能,而不是在需要新功能的地方修改代码 好处每个业务逻辑放在一个地方,不是分散到代码各个角落.业务模块只包含核心功能,辅助功能转到切面中,使其更加清晰.关注的是共同处理.通过spring配置把某个作用应用到多个点上.提高灵活性 重要术语切面(Aspect):就是你要实现的交叉功能---共通业务处理可以被切入到多个目标对象.并且多次使用连接点(Joinpoint):应用程序执行过程中插入

初识Aop和扩展Aop

一.什么叫做AOp 解析:Aop(Aspect Oriented Programming)是面向切面编程,软件编程的一种思想. OOp(Object Oriented Programming)是面向对象编程. Aop是基于OOp的,又高于OOp. 二.区别 面向对象编程是从[静态角度]考虑程序的结构,而面向切面编程是从[动态角度]考虑程序运行过程. AOP底层,就是采用[动态代理]模式实现的.采用了两种代理:JDK动态代理和CGLIB动态代理. 三.切入点表达式 execution([modif

【皇甫】?初识AOP

新知识,新起点,下面介绍一下aop所要准备架包和各个层 特点: 创建好的各个层: 所需架包: 具体步骤: No.1  搭建分层架构 entity 1 1 public class User implements Serializable{ 2 2 private Integer id; // 用户ID 3 3 private String username; // 用户名 4 4 private String password; // 密码 5 5 private String email; /

初识Spring AOP

AOP 是OOP的补充,主要为了解决 代码混乱 代码分散 这2个问题AOP的好处: 1.每个事务逻辑 位于一个位置,代码不分散,便于维护和升级 2.业务模块更简洁,只包含核心业务代码 AOP的主要编程对象是切面(验证参数,前置日志,add(),后置日志) +—*/这个例子中的2个切面就是验证参数,日志(包括前置日志,后置日志) 切面即被模块化后的特殊对象 AspectJ的作用:开发者无需修改源代码,但又可以为这些组件添加新的功能,AspectJ采用编译时增强的解决方案,需要使用自己的编译器来编译

spring之初识Ioc&Aop

Spring框架的作用 spring是一个轻量级的企业级框架,提供了ioc容器.Aop实现.dao/orm支持.web集成等功能,目标是使现有的java EE技术更易用,并促进良好的编程习惯. Spring框架主要用于与其他技术(struts,hibernate等)进行整合,可将应用程序中的Bean组件实现低耦合关联.最终可以提高系统扩展和维护性. 将来我们利用Spring框架管理系统的各个组件(Action,Service,DAO).采用Spring的IOC和AOP机制实现各组件的关联.从而实

AOP(面向切面编程)初识Demo

刚学习了AOP的前值增强和后置增强,个人感觉就是在调用一些方法前,或调用一些方法后绑定一个方法,让这些方法被调用之前或者调用结束后执行这个方法. 例子: MyAdvice类:存放调用service方法前或后需要执行的方法: public class MyAdvice { /* * * @param jp 表示一个方法调用 */ public void beforeLog(JoinPoint jp) { // jp.getTarget() 表示连接点所属的对象 // jp.getSignature

初识轻量级Java开源框架 --- Spring

初识轻量级Java开源框架 --- Spring 作者:egg 微博:http://weibo.com/xtfggef 出处:http://blog.csdn.net/zhangerqing spring是一个轻量级Java框架,其核心思想就是DI(Dependency Injection,即依赖注入)和IoC(Inversion of Control,即控制反转),因为其开源.低侵入性,现在已经席卷了很大一部分市场,其最大竞争对手乃是JavaEE框架EJB.EJB3.0以前,由于其笨重以及使用

初识JAVA反射<一>_0626

反射 一.最开始接触javaSE的时候就没有怎么学过反射,感觉好难,老师讲的也很晦涩,然后就没有然后了,最近项目中用到了AOP切面编程,全都是运用的反射,不学不行了,索性问问过来人. 1.一种说法是java反射实际上就是转换,讲java代码转换为二进制. 2.第二种说法就是将javaBean什么的转换成你需要的形式. 现在给我的想法,我觉得在SpingMVC上就用到了反射,我前台的ajax传过来的值,可以直接传到我的Controller的参数中得类,比如说, $.ajax{ .... data:

Spring框架之Spring AOP

一.基于注解管理的AOP 1.Spring配置文件 <!-- 配置自动扫描包,自动扫描Bean组件,切面类 --> <context:component-scan base-package="com.zhoujian.spring.anno,com.zhoujian.spring.test"> <!-- <context:include-filter type="annotation" expression="org.a