• 2024-09-09SpringBoot异步任务获取HttpServletRequest
    在SpringBoot应用中,异步任务的实现通常通过 @Async注解来实现,它允许我们在后台线程中执行方法,从而提高了应用的性能和响应速度。然而,当我们在异步任务中需要访问 HttpServletRequest对象时,我们会遇到一些挑战,因为 HttpServletRequest是线程绑定的,而异步任务是在不同的线程
  • 2024-06-11springboot junit测试
    这边记录的不是怎么在springboot下作测试,而是最近在学习测试时遇到的一个有趣的问题。啰嗦两句,一直觉得单元测试很重要,但我在以前的工作中发现很少有人重视,或者很少有人去写这个单元测试,其实单元测试也不难,关键得上手,慢慢就会有感觉,但说实话一开始不会写的话,需要有个样例,这样你去
  • 2024-04-12FeignClient的拦截器中RequestContextHolder.getRequestAttributes()值为null
    一、遇到问题在@FeignClient的拦截器中获取token,我首先获得RequestContextHolder.getRequestAttributes(),结果发现值为null。``二、资料查找内事不决问百度,感觉百度了一下,很快我发现其他人也有通用报null的问题,只是他们是出现在子线程中,所以我猜测@FeignClient调用的时候为异
  • 2024-04-07多线程环境中使用MyBatis时避免出现没有token的问题
    //很重要,在多线程没有token下面三行可以解决mybatis方法报错//1.通过当前的WebUtil.getRequest()获取Servlet请求的属性ServletRequestAttributesservletRequestAttributes=newServletRequestAttributes(WebUtil.getRequest());//2.将获取到的Servlet请求属性设置
  • 2024-03-13feign传递token
    publicclassFeignInterceptorimplementsRequestInterceptor{@Overridepublicvoidapply(RequestTemplaterequestTemplate){ServletRequestAttributesrequestAttributes=(ServletRequestAttributes)RequestContextHolder.getRequestAttributes();if(req
  • 2023-11-07RequestContextHolder详解(获取request对象的四种方法)
    方法1、Controller中加参数来获取request注意:只能在Controller中加入request参数。一般,我们在Controller中加参数获取HttpServletRequest,如下所示:@RestController@RequestMapping("/gap")publicclassPlantTraceController{@PostMapping("/plantTrace")publicResult
  • 2023-08-14SpringBoot有几种获取Request对象的方法?
    HttpServletRequest简称Request,它是一个ServletAPI提供的对象,用于获取客户端发起的HTTP请求信息。例如:获取请求参数、获取请求头、获取Session会话信息、获取请求的IP地址等信息。那么问题来了,在SpringBoot中,获取Request对象的方法有哪些?常见的获取Request对
  • 2023-08-01理解ServletRequestAttributes servletRequestAttributes = ((ServletRequestAttributes) RequestContextHold
    1.RequestContextHolder是Spring框架提供的一个工具类,用于在当前线程中持有和公开请求的上下文信息。它使用ThreadLocal来实现线程级别的变量绑定。2.getRequestAttributes()是RequestContextHolder的静态方法,用于获取当前线程中绑定的请求属性。这些请求属性通常是Serv
  • 2023-05-13Fegin异步情况下丢失上下文问题
    问题:Order服务需要远程调用member服务进而查询所有的地址列表,也需要远程调用cart服务进而查询购物车所有选中的购物项,串行执行远程调用会浪费大量时间,因此我们进行异步编排优化@Override  publicOrderConfirmVoconfirmOrder()throwsExecutionException,InterruptedExc
  • 2023-04-13HttpServeletRequest与RequestContextHolder.getRequestAttributes.getRequest的区别
    HttpServletRequest是JavaServletAPI中的一个接口,它提供了访问HTTP请求的方法,例如获取请求参数、请求头、请求体等。它是在Servlet容器中处理HTTP请求时创建的,并在Servlet的doGet()、doPost()等方法中作为参数传递。RequestContextHolder.getRequestAttributes().getRequest
  • 2023-03-08RequestContextHolder获取得到Request
    RequestContextHolder获取得到Request目录RequestContextHolder获取得到Request一、问题二、使用三、RequestContextHolder初始化四、特殊情况:子线程获取得到request子线
  • 2023-02-20111、商城业务---订单服务---Feign异步调用丢失请求头问题
    原先我们是在ThreadLocal共享我们的用户的登录信息,但是只能在一个线程内取到,就比如上一节所介绍的那样。但是我们为了提高效率,使用了线程池这就出现了不同线程。因此在