- 博客(4)
- 收藏
- 关注
原创 深入理解 Java AbstractQueuedSynchronizer 的 acquire 和 release 操作
(简称 AQS) 是 Java 并发包中的一个重要类,它是许多高级并发类的基础,如Semaphore等。本文将深入解析 AQS 中的acquire和release操作。
2023-07-28 03:07:27
352
1
原创 工作中Filter获取了一次HttpServletRequest做其他处理,导致业务流程的@RequestBody无法获取数据
然后,我重写了getInputStream()和getReader()方法,使它们返回一个新的输入流或读取器,这些输入流或读取器是从存储请求体的字节数组中创建的。这是因为这两个方法返回的输入流或读取器是从HTTP请求的输入流创建的,而HTTP请求的输入流是一个只能向前移动的流,不支持回退或重置。这些输入流或读取器是从存储请求体的字节数组中创建的,而不是从原始的HTTP请求输入流中创建的。这样,我们就可以在后续的处理中多次读取请求体,而不会受到HTTP请求输入流只能被读取一次的限制。在拦截器中,我这样使用。
2023-07-08 13:52:36
462
1
原创 从Tomcat迁移到Netty:filter中塞入的ThreadLocal值却无法获取值了
这就意味着,如果Filter在IO线程中执行,那么在后续的业务逻辑处理线程中就无法获取到在Filter中设置的ThreadLocal值。由于Interceptor是在处理请求的业务线程中执行的,因此我们可以确保在后续的业务逻辑中能够获取到ThreadLocal的值。这是因为Interceptor是在Spring的上下文中运行的,因此它始终在和业务处理逻辑相同的线程中执行。在这个示例中,我们从请求中获取User对象,然后将其存储在ThreadLocal中,以供后续的请求处理逻辑使用。
2023-07-07 23:27:56
268
1
原创 在Docker环境中解决Spring Boot和Redis连接问题
在本文中,我们将探讨如何在Docker环境中解决Spring Boot应用无法连接到Redis服务器的问题,并且如何将Spring Boot应用的配置文件外置。我们将通过一个实际的问题和解决方案来进行讲解。
2023-07-07 16:24:11
1590
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人