- 博客(131)
- 收藏
- 关注
原创 WebSocket STOMP协议服务端给客户端发送ERROR帧
本文介绍了两种处理STOMP协议错误的方法:第一种是手动创建ERROR帧,通过继承StompSubProtocolErrorHandler并重写handleClientMessageProcessingError方法,自定义错误信息和头部字段后返回错误消息;第二种是直接抛出MessageDeliveryException,让Spring框架自动调用StompSubProtocolErrorHandler处理。两种方式都需要在配置中注册自定义错误处理器。第一种方法提供更精细的控制,第二种则更为简便。
2025-09-02 13:26:04
246
原创 SpringBoot整合Spring WebFlux弃用自带的logback,使用log4j2,并启动异步日志处理
本文介绍了在Spring Boot项目中配置Log4j2日志系统的三个步骤:1)修改pom文件,排除默认日志依赖并添加Log4j2相关依赖;2)添加Log4j2核心依赖并定义版本属性;3)创建log4j2.xml配置文件,配置了彩色控制台输出和按级别分文件存储的滚动日志策略,包括DEBUG、INFO、WARN和ERROR级别日志的输出格式、路径和滚动策略。配置还包含异步Appender优化性能,并设置了特定包和框架的日志级别。
2025-08-29 09:25:18
315
原创 SpringBoot WebSocket多消息推送
本文实现了一个基于Spring Boot的WebSocket消息推送系统,主要功能包括:1)支持向指定分组、所有分组、所有用户或特定用户推送消息;2)支持用户多设备登录和多个分组管理;3)内置心跳检测机制(25秒间隔,40秒超时);4)失败重试机制(超过5次失败自动关闭连接);5)使用公平锁保证并发安全。系统包含WebSocket配置类、处理器、拦截器和工具类,通过会话管理、心跳监控和分组管理实现可靠的消息推送。测试地址为ws://localhost:8099/ws/{id},提供添加分组、发送消息等RES
2025-08-21 09:57:56
376
原创 java.lang.IllegalArgumentException: Name for argument of type [java.lang.String] not specified, and
【代码】java.lang.IllegalArgumentException: Name for argument of type [java.lang.String] not specified, and。
2024-09-29 15:23:23
208
原创 xxl-job2.4.2 升级SpingBoot3.3.3,JDK17
xxl-job2.4.2 升级SpingBoot3.3.3,JDK17,及异常解决
2024-09-29 11:30:42
823
原创 SpringBoot MySQL BinLog 监听数据变化(多库多表)
SpringBoot MySQL BinLog 监听数据变化(多库多表)库.表,库1.表1,库1.表2
2024-08-19 17:47:45
1784
原创 SpringBoot SseEmitter 使用ApiFox,PostMan会自动断开
SpringBoot SseEmitter 使用ApiFox,PostMan测试,三分钟之后就会自动断开。
2024-08-01 18:07:13
1384
原创 SpringBoot SseEmitter,服务器单项消息推送
SpringBoot SSE(Server-Sent Events,服务器推送事件)
2024-07-31 17:58:52
1003
原创 获取@RequestBody ,@RequestParam注解的参数
【代码】获取@RequestBody ,@RequestParam注解的参数。
2024-05-28 15:36:15
374
原创 Token令牌续期
7:token的令牌到期时间以此类推,到第五步的时如果不续签,或者没有客户端请求时,token令牌正常到期。2:创建token时,加入有效负荷,如唯一key / ip等,确保为同一个用户,不会重复下发token。1:定义时间(续签时间最好是到期时间的三分之一的,当然过期时间不宜过长,否则这个令牌一直活跃)5:判断如果 到期时间 - 本地时间 < 续签时间,则续签,否则不续签。6:续签的到期时间则为此时的本地时间,作为新的token令牌到期时间。1:定义两个时间:到期时间,续期时间。
2024-03-21 17:58:17
562
原创 mybatisplus 批量插入与修改
1:重写injectMappedStatement,生成拼接批量新增/修改sql的脚本。3:在mybatisplus配置中加入注入器。保留原mybatisplus自有的方法。4:定义mapper接口。
2024-03-01 15:27:04
2319
1
原创 WebSocket 报java.io.IOException: 远程主机强迫关闭了一个现有的连接。
WebSocket 报java.io.IOException: 远程主机强迫关闭了一个现有的连接。WebSocket 报java.io.EOFException: 这两个异常
2023-09-04 16:35:49
4439
原创 The WebSocket session [x] has been closed and no method (apart from close())
The WebSocket session [x] has been closed and no method (apart from close())
2023-09-04 16:13:51
1577
原创 The remote endpoint was in state [TEXT_FULL_WRITING]
The remote endpoint was in state [TEXT_FULL_WRITING] 解决办法
2023-09-01 10:42:06
509
原创 SpringBoot2.0集成WebSocket,多客户端
springboot2.0整合websocket,适用于多个客户端登陆或者一个客户端登陆
2023-09-01 10:32:02
2034
原创 java.lang.IllegalStateException: Failed to register @ServerEndpoint class: class
java.lang.IllegalStateException: Failed to register @ServerEndpoint class: class 。。。。。Caused by: javax.websocket.DeploymentException: Multiple Endpoints may not be deployed to the same path [/websocket/{userId}] : existing endpoint was [c
2023-08-22 18:06:45
935
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅