
Java开发
文章平均质量分 57
Luke.Du
这个作者很懒,什么都没留下…
展开
-
Netty聊天系统用户和channel的映射关系维护
背景 在开发一个IM系统的过程中,因为涉及到聊天消息的定向推送,需要在服务器根据用户的唯一标识userId能给够获取到该用户对应的channel来实现该功能。自然而然想到了HashMap做 userId - Channel 的关系映射。但此时遇到了一个问题:在用户 (客户端) 断开连接后会回调 handlerRemoved 的方法,此时我们只能获取到channel和它的id,并没有办法从上述的HashMap中移除 userId - Channel 对应的 key - value 值,这样设计明显是不.原创 2021-03-16 15:22:05 · 1931 阅读 · 0 评论 -
无法同时开启springboot和netty服务器端口的监听,和netty整合使用mybatis的问题 (后附完整的springboot整合netty代码)
目的背景描述解决办法SpringBoot整合Netty完整代码目的 解决springboot程序监听的端口和netty服务监听的端口无法同时开启的问题,以及netty无法较为便利地使用mybatis操作数据库的问题。背景描述 正在做的一个IM即时通讯项目,springboot服务器负责监听http的CRUD等请求,netty的websocket服务器负责即时聊天消息的签收和推送功能。常见的两种springboot整合netty的方法如下: 1、单独写一个main方法,运行nett..原创 2021-03-15 11:15:04 · 4913 阅读 · 7 评论 -
FastJson的parseObject方法报错 syntax error, expect {, actual string, pos 0
报错信息使用 JSON.parseObject 把前端传来的json序列化字符串转换成Java对象时:syntax error, expect {, actual string, pos 0, fastjson-version 1.2.73解决办法debug下,msgStr为接收到的初始字符串,可以看出里面添加了java的转义字符 “\” 和前后各多了一个 " 。我们可以通过JSON.parse方法,把带有转义字符的字符串格式化成我们想要的样子,如下文中字符串str所示,里面去掉了转义字符。.原创 2021-03-08 10:34:56 · 14832 阅读 · 4 评论 -
Java拦截器验证失败时返回Json格式数据
Java拦截器验证失败时返回Json格式数据 1、添加FastJson依赖在pom.xml中添加如下依赖<!-- fastjson --><dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47</version></dependency>原创 2021-03-02 09:56:30 · 1622 阅读 · 0 评论 -
SpringBoot配置swagger(3.0.0)及遇到的Bug(spring-plugin-core导包冲突)
SpringBoot配置swagger(3.0.0)及遇到的Bug一、swagger的配置1、在pom.xml里添加swagger依赖,如下:<!-- 配置swagger --><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-boot-starter</artifactId> <version>3.0.0</versio原创 2021-02-14 18:38:36 · 1996 阅读 · 0 评论