RequestContextHolder 和 servletRequest有什么区别
时间: 2024-01-06 15:22:54 浏览: 64
RequesContextHolder和srvReques都可以用于获取当前请求的HttpServletReques对象,但它们之间有一些区别。\n\RequesContextHolder是Spring框架提供的一个工具类,用于在当前线程中存储和访问请求相关的信息,包括HttpServletReques对象。它使用ThrL来存储请求信息,因此可以在任何地方访问当前请求的信息,而不必将HttpServletReques对象作为方法参数传递。另外,RequesContextHolder还提供了一些静态方法,可以方便地获取当前请求的HttpServletReques对象。\n\而srvReques是Jav Serv API中的一个接口,用于表示HTTP请求。它提供了一些方法,可以获取请求的参数、头信息、请求方法等。与RequesContextHolder不同的是,srvReques需要在每个方法中作为参数传递,才能访问请求相关的信息。\n\因此,RequesContextHolder相对于srvReques更加方便,可以在任何地方访问当前请求的信息,而不必将HttpServletReques对象作为方法参数传递。但是,如果你不使用Spring框架,就无法使用RequesContextHolder。\n\```jav\// 获取当前请求的HttpServletReques对象\HttpServletReques reques = ((ServletRequesAttributes) RequesContextHolder.getRequesAttributes()).getReques();\```\n\
阅读全文