// 环绕型
package com.aop;
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
import org.springframework.orm.hibernate3.HibernateTemplate;
public class MethodInterceptionTest implements MethodInterceptor {
private HibernateTemplate hiTemplate ;
public void setHiTemplate(HibernateTemplate hiTemplate) {
this.hiTemplate = hiTemplate;
}
public Object invoke(MethodInvocation m) throws Throwable {
Object obj = null;
try {
System.out.println("start .... ");
obj = m.proceed() ;
System.out.println("end ... ");
System.out.println(m.getMethod().getName());
System.out.println(hiTemplate.getSessionFactory().openSession().getClass().getName());
} catch (Exception e) {
// TODO: handle exception
}
return obj;
}
}
// befor
package com.aop;
import java.lang.reflect.Method;
import org.springframework.aop.MethodBeforeAdvice;
public class BeforMethodInterceptionTest implements MethodBeforeAdvice {
public void before(Method arg0, Object[] arg1, Object arg2)
throws Throwable {
System.out.println("我执行了"+arg0.getName());
}
}
引用
// 环绕型 aop 配置
<bean id="methodInterceptionTest" class="com.aop.MethodInterceptionTest" />
<aop:config>
<aop:advisor advice-ref="methodInterceptionTest" pointcut="execution (* com.service.*.*(..))"/>
</aop:config>
// befor aop 配置
<bean id="beforMethodInterceptionTest" class="com.aop.BeforMethodInterceptionTest"></bean>
<aop:config>
<aop:advisor advice-ref="beforMethodInterceptionTest" pointcut="execution (* com.service.*.*(..))"/>
</aop:config>
分享到:
相关推荐
Spring AOP,即面向切面编程,是Spring框架的核心组件之一,它允许程序员在不修改原有业务代码的情况下,对程序进行功能增强。本篇文章将详细阐述Spring AOP的基本概念、种类、代理原理、通知类型以及切入点,帮助你...
Spring AOP(面向切面编程)是Java开发中Spring框架的核心特性之一,它提供了一种在不修改源代码的情况下,对程序进行功能增强的技术。在SSH(Struts、Spring、Hibernate)经典企业级开发框架中,Spring AOP扮演着至...
在本示例中,"Spring示例_Printer_Spring_AOP_Spring_Proxy" 主要关注的是Spring框架中的核心概念,特别是AOP(面向切面编程)和代理模式的应用。让我们深入探讨这些知识点。 首先,Spring框架是Java开发中最常用的...
Spring AOP,全称Aspect-Oriented Programming(面向切面编程),是Spring框架的重要组成部分,它为应用程序提供了声明式的企业级服务,如日志、事务管理等。在本教程中,我们将深入探讨Spring AOP的基本概念、配置...
Spring框架是Java开发中最常用的轻量级框架之一,它的核心特性包括依赖注入(Dependency Injection,简称DI)和面向切面编程(Aspect-Oriented Programming,简称AOP)。这两个概念是Spring框架的基石,极大地简化了...
在IT行业中,Spring AOP(面向切面编程)是一个重要的模块,它允许开发者在不修改源代码的情况下,通过“切面”来实现关注点的分离。AOP联盟(AOP Alliance)提供了一套通用的接口,使得不同的AOP框架可以进行互操作...
Spring AOP(面向切面编程)是其核心特性之一,它提供了一种优雅的方式来处理系统的横切关注点,如日志、事务管理等。本教程将重点讲解如何通过XML配置来实现Spring AOP。 首先,我们要理解AOP的基本概念。AOP是一...
【标题】"spring-aop.rar_java aop_spring aop" 涉及的主要知识点是Spring框架中的面向切面编程(AOP)以及Java基础知识。这个压缩包可能包含了一个简单的Spring AOP应用示例,同时也涵盖了Java的一些核心概念,如...
《Spring 2.5 AOP库的深度解析》 在软件开发中,Spring框架以其强大的功能和灵活性,已经成为Java企业级应用的首选框架之一。在Spring 2.5版本中,AOP(面向切面编程)是其核心特性之一,为开发者提供了优雅地处理...
Spring AOP,全称Spring面向切面编程,是一种强大的设计模式,它允许程序员在不修改原有代码的情况下,插入额外的功能,比如日志记录、事务管理、性能监控等。AOP的核心概念包括: 1. **通知(Advice)**:通知定义了...
使用Spring AOP的时候,需要四个额外的jar包支持 aopalliance-1.0.jar,aspectjweaver-1.8.9.jar,aspectjrt-1.8.9.jar,aspectjtools-1.8.9.jar
基于spring_aop_权限管理系统原型
Spring框架是Java开发中不可或缺的一部分,它以其强大的依赖注入(DI)和面向切面编程(AOP)功能而闻名。这篇“学习Spring笔记_AOP_Annotation实现和XML实现”主要探讨了如何在Spring中利用注解和XML配置来实现AOP...
《深入解析Spring AOP:源码解读与应用实践》 Spring AOP,即Spring的面向切面编程,是Spring框架的重要组成部分,它提供了一种在不修改源代码的情况下,对程序进行功能增强或统一处理的方法。本文将围绕Spring AOP...
Spring AOP(面向切面编程)是Java开发中一个重要的概念,它允许程序员定义“切面”,这些切面可以封装代码中的交叉关注点,如日志、事务管理、权限检查等,使得核心业务逻辑更加清晰。这个压缩包"spring_AOP_jar....
本实例“spring_aop1.rar”是一个关于Spring AOP入门的教程,旨在帮助开发者更好地理解和运用Spring的AOP特性,同时也涉及到Spring MVC的相关知识。下面我们将深入探讨这两个关键概念。 首先,让我们了解一下Spring...
在Spring AOP(面向切面编程)中,CGLIB是一个重要的动态代理库,它用于在运行时创建子类以实现对目标对象的代理。CGLIB是针对那些不支持接口代理(例如Java中的final类)的情况而设计的。下面我们将深入探讨Spring ...
Spring AOP,全称Aspect-Oriented Programming(面向切面编程),是Spring框架的一个重要组成部分。它提供了一种模块化和声明式的方式来处理横切关注点,如事务管理、日志记录、性能监控等,这些关注点通常会分散在...
在Spring框架中,AOP(面向切面编程)是一种强大的工具,它允许程序员定义横切关注点,如日志、事务管理、性能监控等,并将它们模块化为可重用的组件,称为切面。本实例主要探讨如何在Spring AOP中实现拦截器。 ...