`

如何在aop中取得requset

    博客分类:
  • AOP
AOP 
阅读更多

如何在aop中取得requset

可以利用 ThreadLocal

代码如下

public class ApiContext
{

     private static ThreadLocal<Httpservletrequest> requestLocal = new ThreadLocal<Httpservletrequest>();

    public static HttpServletRequest getRequestLocal()
    {
          return requestLocal.get();
    }

    public static void setRequestLocal(HttpServletRequest request)
     {
           requestLocal.set(request);
     }

 

aop中取得request

    @Around("execution(*  atf.pnr.inf.TicketService.add*(..))")
    public final Object invoke(final ProceedingJoinPoint pjp) throws Throwable
    {
         Object retVal = null;
         .......
           HttpServletRequest request=ApiContext.getRequestLocal();
           System.out.println(request.getRemoteAddr())
         ........

         return retVal;
}

 

 

分享到:
评论

相关推荐

    java面试题

    答:声明式的事务管理主要是将在进行对数据库中数据的添加或者修改时需要执行事务管理,主要是为了避免在执行添加或修改的时候添加或修改不完全正确,导致数据丢失。spring使用AOP面向切面的思想进行事务管理的。 ...

    8.EJB3的拦截器(外部类)

    拦截器是一种面向切面编程(AOP)的概念,允许开发者在方法调用前后插入自定义的行为,而无需修改业务逻辑代码。 ### 1. 拦截器的定义与工作原理 拦截器是基于JDK动态代理或CGLIB实现的,它们在EJB方法调用前和...

    ThreadLocal原理及在多层架构中的应用.pdf

    在Struts2框架中,ActionContext充当了Action的上下文环境的角色,它保存了request、session、parameters、locale等信息。通过ThreadLocal,可以保证这些信息在Action的不同调用中保持一致,即在同一个请求的不同...

    25个经典的Spring面试问答

    Spring框架是Java应用程序开发的核心平台,它通过提供依赖注入(DI)和面向...理解并掌握以上知识点,对于在Spring面试中取得成功至关重要。准备面试时,除了理解概念,还要能结合实际例子进行解释,展现你的实战能力。

    java面试宝典

    130、如何防止在JSP或SERVLET中的输出不被BROWSER保存在CACHE中? 32 131、在JSP中如何设置COOKIE? 32 132、在JSP中如何删除一个COOKIE? 32 133、在一个JSP的请求处理中如何停止JSP的执行 33 134、在JSP中如何定义...

    seasar2中文文档

    - Seasar2支持面向切面编程(AOP),可以在`app.dicon`文件中配置AOP相关的组件和切面。 - **META数据** - Seasar2支持元数据(META)的概念,可以在组件中定义和使用这些元数据。 - **Request的自动绑定** - 自动...

    php支付宝APP支付功能

    本文实例为大家分享了Android九宫格图片展示的具体代码,供大家参考,具体内容如下 支付宝网页支付 1.支付宝开放平台添加应用,获得appid,并签约。... 'Alipay/aop/request/AlipayTradeAppPayRequest.php'; $notify

    《Spring+in+action+中文版(第4版)》读书笔记

    **依赖注入**是一种设计模式,通过这种方式,一个类的对象不是在类内部创建其依赖对象,而是通过外部注入的方式获得这些依赖。Spring提供了三种主要的依赖注入方式: 1. **XML配置**:这是最传统的配置方式,开发者...

    spring基础教程 spring基础教程

    Spring框架是Java开发中的核心组件,它为应用程序提供了一个全面的基础设施,支持bean的管理、依赖注入、AOP(面向切面编程)、MVC(模型-视图-控制器)等特性。本教程将深入探讨Spring的基础知识,帮助初学者快速...

    JSP基于SSM农产品交易网响应式设计可升级SpringBoot源码案例设计.zip

    在农产品交易网中,这意味着无论用户使用手机、平板还是桌面电脑,都能获得良好的浏览体验。这可能通过CSS框架(如Bootstrap)和媒体查询等技术实现。 综上所述,这个项目是一个涵盖多种Java Web技术的实战案例,...

    spring+netty+mybatis整合实例

    在IT行业中,Spring、Netty和MyBatis是三个非常重要的框架,它们分别在不同的领域发挥着关键作用。Spring是一个全面的Java应用框架,提供强大的依赖注入、AOP(面向切面编程)以及丰富的功能模块;Netty则是一个高...

    Spring3.0jar包

    Spring框架是Java开发中最常用的轻量级开源框架之一,它以IoC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)为核心,极大地简化了企业级应用的开发工作。Spring3.0是Spring...

    各大公司Java后端开发面试题总结

    在Spring框架中,ThreadLocal被广泛应用在诸如管理Request作用域中的Bean、事务管理、任务调度和AOP(面向切面编程)等模块。每个使用ThreadLocal变量的线程都会拥有这个变量的一个独立副本,从而实现数据隔离。在...

    java方向模拟笔试题

    在 Java 中,Spring 框架提供了强大的 AOP 支持。 #### 编程题 1. **用 JAVA 语言实现任何一种排序算法。** - 以下是一个简单的冒泡排序算法实现示例: ```java public class BubbleSort { public static void...

    基于JavaScript的数据可视化实验室后台管理系统源码+项目说明(期末大作业).zip

    元注解:修饰注解的注解,@Target:注解用在哪种java元素上, @Retention:注解的生命周期,@Documented),再用自定义方法参数解析器HandlerMethodArgumentResolver取出request header中的user,调用service层方法...

    大一java期末大作业

    Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。对于大一学生来说,学习Java不仅是掌握一种编程工具,更是理解面向对象编程思想的重要步骤。...祝你在大作业中取得好成绩!

    spring2.5.pdf

    Spring 2.5的发布标志着Spring框架进入了一个全新的阶段,它不仅在原有基础上强化了IoC容器、AOP、Web层等多个方面的功能,还引入了众多新的特性和改进,极大地提高了开发效率和应用性能。对于企业级应用开发而言,...

    高级Java经典面试题2019

    在Spring框架中,代理模式常用于AOP(Aspect-Oriented Programming)实现,通过动态代理技术为方法调用添加横切关注点的功能。 #### Spring框架中的AOP实现 Spring AOP使用动态代理技术,对于实现了接口的类使用...

Global site tag (gtag.js) - Google Analytics