目的是在不知道对方主机IP情况下想要建立TCP连接进行数据传输
整体思路是首先UDP广播消息,服务器接收到广播消息后回送本机IP和端口,这样便能进行连接
UDP搜索IP与端口
- 构建基础口令消息(发送消息的格式,服务器接收可以识别才能回送消息,避免接收其他干扰广播)
- 局域网广播口令消息(指定端口)
- 接收指定端口回送的消息(IP与端口)
UDP搜索取消
- 异步线程接收回送消息
- 异步线程等待完成
- 关闭线程等待
运行环境
IDEA
目录结构
client --客户端
bean --数据格式封装包
ServerInfo --服务器信息封装类
Client --客户端启动总类
TCPClient --TCP数据发送类
UDPSearcher --UDP搜索类
clink --工具包
utils --基本工具包
ByteUtils --byte数据的工具类
Clink --clink总类
constants --协议规定包
TCPConstants --TCP协议规定端口等
UDPConstants --UDP协议规定端口等
server --服务端
Server --服务器启动总类
TCPServer --TCP服务端
UDPProvider --UDP接收广播回送消息类
代码
注释也都在里边了
注:到此功能只能实现连接到服务器后,客户端输入数据,客户端接收数据并回送所发数据长度,服务器尚不能发送消息。以后的文章会做进一步修改。
链接: 百度网盘 提取码: 2s81