bboss aop 实践 (5-1) 拦截器(Interceptor)

简介: ,文件内容如下:                          其它拦截器 -->           将simplemanager-interceptor.xml文件配置在主文件manager-provider.xml文件中:   这样我们就配置完毕了。

,文件内容如下:

<?xml version="1.0" encoding='gb2312'?>

<manager-config>

    <manager id="interceptor.a"

       singlable="true">

       <provider type="A" class="com.chinacreator.spi.interceptor.A" />

       <interceptor class="com.chinacreator.spi.interceptor.Insterceptor"/>

       <!—-其它拦截器

<interceptor class="com.chinacreator.spi.interceptor.Insterceptor1"/>-->    

    </manager>

</manager-config>

 

simplemanager-interceptor.xml文件配置在主文件manager-provider.xml文件中:

<managerimport file="com/chinacreator/spi/interceptor/manager-interceptor.xml" />

 

这样我们就配置完毕了。

 

使用业务组件,拦截器作用于业务方法

 

package com.chinacreator.spi.interceptor;

 

import com.chinacreator.spi.BaseSPIManager;

import com.chinacreator.spi.SPIException;

 

public class TestInterceptor {

    public static void testInterceptor()

    {

       try {

           AI a = (AI)BaseSPIManager.getProvider("interceptor.a");

           try {

              a.testInterceptorsBeforeAfter();

           } catch (Exception e) {

              // TODO Auto-generated catch block

              e.printStackTrace();

           }

           try {

              a.testInterceptorsBeforeThrowing();

           } catch (Exception e) {

              // TODO Auto-generated catch block

              e.printStackTrace();

           }

       } catch (SPIException e) {

           // TODO Auto-generated catch block

           e.printStackTrace();

       }

    }

   

    public static void main(String[] args)

    {

       testInterceptor();

    }

 

}

 

综上所述,bboss aop框架提供了使用非常简单但功能强大的拦截器组件,不妨一试。

目录
相关文章
|
3月前
|
Java Spring
Spring 源码阅读 72:基于 CGLIB 的 AOP 代理的原理(2)- 拦截器的查找与执行
【1月更文挑战第7天】本文分析了基于 CGLIB 的 AOP 代理如何查找和执行拦截器链,其主要的逻辑在 DynamicAdvisedInterceptor 的intercept方法执行。
35 1
|
3月前
|
缓存 Java Spring
Spring 源码阅读 66:基于 JDK 的 AOP 代理如何获取拦截器链(4)- 将 Advice 封装为拦截器
【1月更文挑战第1天】本文分析了 Advice 被封装成 MethodInterceptor 的过程,Spring AOP 用到的五种 Advice 中,有些本身就是 MethodInterceptor 的实现类,而有些需要通过适配器的封装。
41 0
|
3月前
|
XML Java 数据格式
Spring 源码阅读 70:基于 JDK 的 AOP 代理拦截器链执行(4)- 容易被忽略的 ExposeInvocationInterceptor
【1月更文挑战第5天】本文分析了 Spring AOP 拦截器链中的一个特殊拦截器 ExposeInvocationInterceptor 的注册的时机以及它的作用。至此,基于 JDK 的 AOP 代理拦截器链执行的逻辑就分析完了。
368 0
|
3月前
|
Java 索引 Spring
Spring 源码阅读 69:基于 JDK 的 AOP 代理拦截器链执行(3)- MethodInterceptor 分析
【1月更文挑战第4天】本文详细分析了 Spring AOP 中五种增强类型对应的拦截器中增强方法的执行逻辑,结合上一篇中分析的 ReflectiveMethodInvocation 中proceed方法的执行逻辑,就组成了完整的拦截器链递归调用的逻辑。
34 0
|
3月前
|
Java 索引 Spring
Spring 源码阅读 68:基于 JDK 的 AOP 代理拦截器链执行(2)- ReflectiveMethodInvocation 分析
【1月更文挑战第3天】本文分析了 ReflectiveMethodInvocation 类中的proceed方法,通过对这个方法的分析,了解了连接器链中的增强逻辑是如何逐层执行的,以及目标方法是什么时候被调用的。
30 0
|
3月前
|
Java Spring
Spring 源码阅读 67:基于 JDK 的 AOP 代理拦截器链执行(1)- 执行前的准备工作
【1月更文挑战第2天】本文总结了 JdkDynamicAopProxy 的invoke方法在获取到拦截器链之后,是如何开始执行增强逻辑的。对于拦截器链为空的情况,会直接调用目标方法,而存在拦截器的情况下,会将拦截器链和目标方法调用的信息封装成一个 MethodInterceptor 对象,执行其proceed方法,来完成增强逻辑和目标方法的执行。
21 0
|
4月前
|
Java Spring
spring boot aop 实践---记录日志
spring boot aop 实践---记录日志
28 0
|
4月前
|
安全 前端开发 Java
Java反射详解,学以致用,实战案例(AOP修改参数、Mybatis拦截器实现自动填充)3
Java反射详解,学以致用,实战案例(AOP修改参数、Mybatis拦截器实现自动填充)
80 0
|
4月前
|
Java 数据库连接 API
Java反射详解,学以致用,实战案例(AOP修改参数、Mybatis拦截器实现自动填充)2
Java反射详解,学以致用,实战案例(AOP修改参数、Mybatis拦截器实现自动填充)
44 0
|
4月前
|
存储 Java 数据库连接
Java反射详解,学以致用,实战案例(AOP修改参数、Mybatis拦截器实现自动填充)1
Java反射详解,学以致用,实战案例(AOP修改参数、Mybatis拦截器实现自动填充)
53 0