`
Angelialily
  • 浏览: 241705 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

AOP的实现

阅读更多
1.先做一个接口 里有 foo()方法
 package com.lily.rules;
 public interface IUserDAO {
  public void foo();
 }
2.在做一个实现接口的类
 package com.lily.rules;

 public class UserDAOImp implements IUserDAO {
 public void foo() {//固定的方法
  // TODO Auto-generated method stub
  System.out.println("hello first");
 }

 }
3.做一个测试类
 package com.lily.rules;
 import org.springframework.context.ApplicationContext;
 import org.springframework.context.support.FileSystemXmlApplicationContext;
 public class MainApplication {
 public static void main(String args[]){
  ApplicationContext  txt = new FileSystemXmlApplicationContext  

("D:\\workspace\\FirstSample\\com\\lily\\rules\\applicationContext.xml");
  IUserDAO  log    = (IUserDAO) txt.getBean("businesslogicbean");
  log.foo();
 }
 }


 }
4.做一个Before类:固定的类名和实现的接口
 package com.lily.rules;
 import java.lang.reflect.Method;
 import org.springframework.aop.MethodBeforeAdvice;
 public class TracingBeforeAdvice implements MethodBeforeAdvice {

 public void before(Method arg0, Object[] arg1, Object arg2)
   throws Throwable {
  // TODO Auto-generated method stub
  System.out.println(" hello before");
 }

 }
5.开始做After类:固定的类名和实现的接口
 package com.lily.rules;
 import java.lang.reflect.Method;
 import org.springframework.aop.AfterReturningAdvice;
 public class TracingAfterAdvice implements AfterReturningAdvice {

 public void afterReturning(Object arg0, Method arg1, Object[] arg2,
   Object arg3) throws Throwable {

          System.out.println("hello after");

 }
6.做配置信息 applicationContext.xml文件
<beans></beans>
一个完整的切面操作代码完成了!!

分享到:
评论
8 楼 colin2wang 2008-01-30  
不错,是那么一会儿事
7 楼 allen_java 2007-12-26  
还行 大体流程描述出来了
6 楼 yongyuan.jiang 2007-09-12  
spring aop在spring类初始化时候便生成一个代理类,大致提供以下功能:
beforeMethod
afterMethod
roundMethod
原Method

调用这个类时先检查代理对象,判断是否有aop方法,有则根据先后顺序,执行aop方法。
如果没有,直接执行方法。


5 楼 jerry_lee 2007-09-10  
代理机制
4 楼 yeshucheng 2007-09-08  
不知道LZ发这个的用意是什么?:)不明白
3 楼 梦杀杀 2007-09-07  
楼主用附件上传不就是咯~.~
2 楼 Angelialily 2007-09-04  
不好意思.配置文件发表不出来了  不知道为什么带标签的东西它解释出的是乱码!
1 楼 Angelialily 2007-09-04  
不好意! 不知道为什么 发出去的文章少了一些代码.  下面的代码在AOP实现二里补充.!!!  抱歉,抱歉,

相关推荐

    springAOP实现数据字典.zip

    在这个"springAOP实现数据字典.zip"压缩包中,我们主要关注的是如何利用Spring AOP来实现数据字典的功能。数据字典是系统设计中一个关键的组成部分,它存储了系统中所有数据的描述,包括数据项、数据结构、数据流、...

    spring基于AOP实现事务

    总结一下,Spring基于AOP实现的事务管理通过TransactionProxyFactoryBean,结合声明式事务配置,能够提供一种高效且易于维护的事务解决方案。它允许我们在不修改业务逻辑的情况下,统一管理和控制事务,提升了代码的...

    JAVA 中Spring aop 实现日志记载

    2. **Spring AOP实现日志记载** - **配置Spring AOP**:首先,我们需要在Spring配置文件中启用AOP代理。通常,对于基于注解的配置,会使用`&lt;aop:aspectj-autoproxy&gt;`标签;对于XML配置,可以使用`&lt;aop:config&gt;`和`...

    spring aop实现原理

    NULL 博文链接:https://zhang-yingjie-qq-com.iteye.com/blog/319927

    Asp.net Core 3.1基于AspectCore实现AOP实现事务、缓存拦截器功能

    在net core2.2时,我当时就尝试过用autofac实现aop,但这次我不想用autofac,我用了一个更轻量级的框架,AspectCore。 用起来非常非常的简单,但一开始还是走了一点弯路,主要是网上都是net core3以下的教程,3以下...

    Spring AOP实现机制

    **Spring AOP 实现机制详解** Spring AOP(面向切面编程)是Spring框架的核心特性之一,它允许程序员在不修改源代码的情况下,通过“切面”来插入额外的业务逻辑,如日志、事务管理等。AOP的引入极大地提高了代码的...

    基于springboot+mvc+freemarker+aop实现校友信息管理系统源码.zip

    1、基于springboot+mvc+freemarker+aop实现校友信息管理系统源码.zip 2、该资源包括项目的全部源码,下载可以直接使用! 3、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考...

    springboot-AOP实现多数据源动态切换(Druid连接池)

    本知识点将围绕使用Spring AOP和Druid连接池来实现这一目标进行详细说明。 首先,要实现多数据源动态切换,我们必须了解以下几个关键技术点: 1. **Spring AOP(面向切面编程)**:AOP是Spring框架的核心特性之一...

    Spring  AOP实现方法大全

    【Spring AOP实现方法大全】 在Spring框架中,面向切面编程(Aspect-Oriented Programming,简称AOP)是一种强大的设计模式,它允许我们在不修改业务代码的情况下,插入额外的功能,比如日志记录、事务管理等。在...

    基于springboot+mvc+freemarker+aop实现校友信息管理系统.zip

    基于springboot+mvc+freemarker+aop实现校友信息管理系统.zip基于springboot+mvc+freemarker+aop实现校友信息管理系统.zip基于springboot+mvc+freemarker+aop实现校友信息管理系统.zip基于springboot+mvc+freemarker...

    maven工程AOP实现demo

    ** Maven工程AOP实现Demo详解 ** 在Java开发中,Maven是一个不可或缺的构建工具,它可以帮助我们管理项目依赖、构建应用以及执行自动化任务。而AOP(Aspect Oriented Programming,面向切面编程)则是Spring框架的...

    spring的aop实现

    下面我们将深入探讨Spring AOP的概念、实现方式以及实际应用。 首先,我们需要理解AOP的基本概念。AOP是一种编程范式,它将关注点分离,使系统中的核心业务逻辑与辅助性任务(如日志、安全检查等)解耦。在Spring中...

    spring aop 实现权限的简单示例

    在本示例中,我们将深入探讨如何利用Spring AOP实现简单的权限验证。 首先,AOP的核心概念是切面(Aspect),它封装了横切关注点,比如日志、事务管理、权限验证等。在Spring AOP中,切面通过通知(Advice)来定义...

    基于annotation的aop实现

    基于Annotation的AOP实现是Spring框架的一个重要特性,它极大地简化了AOP的使用。在本篇文章中,我们将深入探讨基于Annotation的AOP实现,特别是动态代理的理念。 首先,了解什么是AOP。AOP的核心概念是“切面”...

    理解Spring AOP实现与思想 案例代码

    2. **Spring AOP实现方式** - **代理模式**:Spring AOP使用两种代理方式,JDK动态代理和CGLIB代理。如果目标类实现了接口,Spring会使用JDK动态代理;如果没有实现接口,Spring会使用CGLIB代理生成子类。 - **JDK...

    AOP实现事务的代码

    2. **C#中的AOP实现**:在C#中,我们可以使用动态代理(如 Castle DynamicProxy 或 LinFu.AOP)或者特性驱动的方式(如 PostSharp)来实现AOP。对于事务管理,我们可以利用System.Transactions命名空间中的...

    sping_aop实现

    Spring AOP(面向切面...在Spring_aop项目中,你可能会找到如何自定义事务管理器以及如何利用Spring AOP实现这些功能的具体示例和代码。通过研究这些示例,你可以加深对Spring AOP的理解,并将其应用到自己的项目中。

    Spring框架系列(9) - Spring AOP实现原理详解之AOP切面的实现.doc

    Spring AOP 实现原理详解之 AOP 切面的实现 Spring AOP 是基于 IOC 的 Bean 加载来实现的,本文主要介绍 Spring AOP 原理解析的切面实现过程。AOP 切面的实现是将切面类的所有切面方法根据使用的注解生成对应 ...

    Java之Spring AOP 实现用户权限验证

    在本文中,我们将重点探讨如何使用Spring AOP实现用户权限验证。 首先,权限验证是任何应用程序中不可或缺的一部分,尤其是涉及到用户登录和访问控制的场景。通过Spring AOP,我们可以将权限验证的逻辑与业务代码...

Global site tag (gtag.js) - Google Analytics