`
k1280000
  • 浏览: 202591 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

use interceptor to log informations (J2EE 6 利用interceptor 打Log)

 
阅读更多

 

import javax.interceptor.AroundInvoke;

import javax.interceptor.Interceptor;

import javax.interceptor.InvocationContext;

 

 

Here is the example :

        1.Define the annotation for interceptor

//@Inheritedto specify that the annotation can

//be inherited from superclasses

@Inherited

@InterceptorBinding

@Retention(RetentionPolicy.RUNTIME)

@Target({TYPE, METHOD})

public @interface Logged {

}

 

2. Define the interceptor

@Logged

@Interceptor

public class LoggedInterceptor implements Serializable {

       private static final long serialVersionUID = 274175956305979479L;

 

       public LoggedInterceptor() {

    }

 

    @AroundInvoke

    public Object logMethodEntry(InvocationContext invocationContext)

            throws Exception {

        System.out.println("Entering method: "

                + invocationContext.getMethod().getName() + " in class "

                + invocationContext.getMethod().getDeclaringClass().getName()+"—start”);

        Object o = invocationContext.proceed();

        System.out.println("Entering method: "

                + invocationContext.getMethod().getName() + " in class "

                + invocationContext.getMethod().getDeclaringClass().getName()+"--end");

        return o;

    }

}

 

 

<interceptors>

              <class>com.interceptors.LoggedInterceptor</class>

        </interceptors>    add this in beans.xml to register the interceptor .

 

3.  Use the inceptor : just put the annotation upon the method you want log something

@Logged

       public String redirectUrlTest (){

             

              return "detail.jsf";

       }

 

            here is the output

Entering method: redirectUrlTest in class com.test.render.TestMB--start

 

15:06:18,372 INFO  [stdout] (http-localhost/127.0.0.1:8080-1) hi you are the best  James ! Gentle

 

15:06:18,373 INFO  [stdout] (http-localhost/127.0.0.1:8080-1) Entering method: redirectUrlTest in class com.test.render.TestMB--end

 

分享到:
评论

相关推荐

    利用反射和动态代理机制实现自定义拦截器Interceptor

    利用反射和动态代理机制实现自定义拦截器Interceptor 在本文中,我们将探讨如何利用反射和动态代理机制来实现自定义拦截器Interceptor。拦截器Interceptor是一种常见的设计模式,用于在方法调用前后执行某些操作,...

    Postman-Interceptor-V1.1.2.zip

    2. **请求拦截与修改**: 开发者可以利用Interceptor阻止某些请求,或者在请求发送前更改其参数,如URL、请求头或请求体。这对于测试不同的输入场景或模拟错误响应非常有用。 3. **自动化测试**: 结合Postman的工作...

    postman interceptor

    Postman Interceptor是一款非常实用的工具,主要用于提升API测试与开发的效率,它是由Postman公司推出的配套插件。在Postman这个强大的API开发和测试...正确地利用Interceptor,可以让你在API开发和测试中事半功倍。

    谷歌浏览器插件—— Ajax Interceptor

    总结来说,Ajax Interceptor 是一个方便的Chrome插件,它利用AJAX的异步特性,为开发者提供了强大的控制和调试能力。通过理解和运用这个工具,开发者可以更高效地进行前端开发,尤其是在处理复杂的API交互时。同时,...

    postman+postman interceptor(亲测可用)

    通过以上步骤,你就可以充分利用Postman Interceptor的功能,提升API开发和测试的效率。同时,提供的“说明博客”可能包含更详细的使用技巧和案例,建议参考学习。在实际操作过程中,遇到问题可以查阅官方文档或社区...

    接口测试插件 Postman Interceptor 1.1.1

    **接口测试插件 Postman Interceptor 1.1.1** 接口测试是软件开发过程中的重要环节,它确保了不同系统、服务或组件之间的通信功能正常。Postman是一款广泛使用的接口测试工具,提供了丰富的功能来简化和自动化接口...

    Postman Interceptor for Chrome 0.2.26

    Postman Interceptor是一款强大的工具,专门设计用于与Postman集成,以增强Chrome浏览器中的网络请求管理功能。在本文中,我们将深入探讨Postman Interceptor及其在Chrome 0.2.26_0版本中的特点、用途以及如何进行...

    struts2 Interceptor详解

    Struts2 Interceptor详解 Struts2作为一款流行的Java Web框架,其强大的功能之一就是拦截器(Interceptor)。拦截器在MVC模式中扮演着重要角色,它可以对请求进行预处理和后处理,提供了灵活的扩展机制,使得业务...

    struts2 Interceptor拦截器

    ### Struts2 Interceptor 拦截器详解 #### 一、概述 在现代Web开发中,特别是基于Java的Web应用程序开发中,Struts2框架因其简洁性和强大的...在实际开发中,合理利用Interceptor可以极大地提升开发效率和代码质量。

    Interceptor框架的实现

    Interceptor框架在软件开发中起着关键作用,尤其是在Java企业级应用中,如Spring AOP(面向切面编程)和各种框架中的拦截器机制。本文将深入探讨Interceptor框架的实现,主要涉及Java代理和反射技术。 首先,理解...

    postman及interceptor安装包

    - **API开发**:开发者可以利用Postman快速构建和测试API,确保其正确无误。 - **前端开发**:前端工程师可以使用Postman检验后端提供的接口,调试数据交互问题。 - **后端开发**:后端开发者可以验证自己的API...

    Postman-Interceptor_0.2.20压缩文件

    Postman是一款广受欢迎的API开发、测试和文档管理工具,其Interceptor组件是它的一个重要功能扩展。Interceptor允许Postman与浏览器进行同步,捕获和发送网络请求,这对于开发者在调试和测试API时非常有用。本篇文章...

    postman+Interceptor.rar

    《Postman与Interceptor的深度应用解析》 在IT行业中,Postman是一款不可或缺的API测试工具,而Interceptor则是其强大的辅助插件,它们的结合使用能够极大地提升开发者在接口测试中的效率和准确性。本文将深入探讨...

    postman插件interceptor插件

    6. **文档生成**:Postman可自动生成接口文档,便于团队协作和对外分享。 **Interceptor插件的作用:** 1. **实时同步**:Interceptor允许Postman与浏览器进行实时同步,捕获在浏览器中触发的网络请求,这对于测试...

    Postman-Interceptor_v0.2.20.rar

    Postman是一款广受欢迎的API开发、测试和文档化工具,而Postman Interceptor则是Postman的一个重要组件。本文将深入探讨Postman Interceptor的功能、用途及其与Postman的协同工作方式。 Postman Interceptor是...

    mybatis interceptor

    MyBatis Interceptor 是 MyBatis 框架中的一个重要组件,它允许我们在 SQL 执行过程中插入自定义的行为。在本例中,我们探讨的是如何使用 MyBatis Interceptor 来实现分页功能,这对于处理大数据量的查询是至关重要...

    Struts2_interceptor_和_filter区别

    标题和描述均聚焦于“Struts2_interceptor_和_filter区别”,这暗示着对比和解析Struts2框架中拦截器(Interceptor)与过滤器(Filter)的差异是本文的核心议题。接下来,我们将深入探讨这两者在功能、实现方式以及...

    Postman Interceptor

    **Postman Interceptor**是Postman工具的一个强大扩展,它为开发者在进行API测试和调试时提供了更加便捷的功能。Postman是一款广泛使用的API开发、测试和文档化工具,而Interceptor则是其增强功能的一部分,允许实时...

Global site tag (gtag.js) - Google Analytics