关于Netty的ChannelHandlerContext获取问题

HanawaGuo 2017-01-11 08:50:25
需求是一个三方通讯,服务器作为中转,用户通过与服务器的长连接或者是短连接控制与服务器长连接的硬件功能。

与服务器保持长连接的硬件如何直接将channel的ChannelHandlerContext传递给用户操作的代码块呢?我利用了static List<>集合的办法保存ctx,然后用户想要控制硬件就的先获取ctx,再通过inboundHandlerAdatper或者是outboundHandlerAdapter来实现需求,这个是已经实现了的,但是需要对硬件与服务器连接的状态进行保存到数据库,用户再从数据库中获取对应的List<>下标再去获取ctx,最后才是实现功能,中转步骤过多,造成应用资源浪费,有没有直接获取已连接channel的ctx方法,不需要数据库保存状态的实现方法?

项目环境是:Spring Boot+netty4.0,Spring Boot使用gradle+maven构建
...全文
1924 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
sanshengshui 2017-04-23
  • 打赏
  • 举报
回复
楼主怎么实现的 可以把代码贴出来吗
HanawaGuo 2017-01-12
  • 打赏
  • 举报
回复
好吧。我自己找到问题解决办法了,用static map,不用list。数据结构没学好的下场。

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧