4 功能实现
4.1 系统设计流程
4.1.1 聊天功能的流程设计
采用DUP协议设计局域网聊天功能,在局域网聊天功能中,设计了一个客户端和一个服务端, 在通信建立的时候,通信的发起方首先确认通信的IP地址和Port端口,然后发送消息给服务端。服务端需要在同样的端口上等待发起者的信息。 客户端:
开始 从发送窗口中读入数据 Sendmessage调用UDP DatagramSocket DatagramPacket 调用Send方法发送数据 调用close方法关闭客户端 结束 图4-1 发送端工作流程图
第 9 页
服务端:
开始 DatagramSocket DatagramPacket 调用receive方法接收数据,存入datagram中 是否收到 信息 Y 进入文件 接收区 N 显示内容 调用close方法关闭服务端 结束 图4-2 接收端工作流程图
4.1.2 文件传输功能系统实现
使用TCP协议实现文件传输功能,服务端开始监听,客户端选择建立会话。会话建立成功后,开始选择文件进行传输。在文件传输开始时,由客户端给服务端发送文件,内容为待发送文件名和长度。客户端收到后判断是不是传送的文件,如果是则服务端选择接收文件。然后开始传输文件,文件传输完成后,选择关闭服务器端和客户端。
第 10 页
客户端:
开始 选择文件 发送文件名和文件大小 等待对方接收 是否接收 Y N 发送文件 调用ServerSocket创建服务器端 调用getOutputStream()发送文件 将文件的内容读取到buf中 通过write(buf, 0, read)方法发送文件内容 关闭发送端serversocket和server 结束
图4-3 文件传输客户端工作流程
第 11 页
服务端:
开始 接收文件名和文件大小 显示文件名和大小 是否接收 Y N
创建socket 调用getInputStream()方法接收内容 调用getInputStream发送文件 将文件的内容读取到buf中 将文件写入本地磁盘 关闭客服端 结束
图4-4 文件传输服务端工作流程
第 12 页
4.3 实现
4.3.1聊天交互界面 (1)客户端信息显示
(2)服务端信息显示
第 13 页