out.println(\out.close(); in.close(); socket.close(); } ss.close(); } catch (IOException e) {} } public static void main(String[] args) { new Server(); } } 这个程序建立了一个服务器,它一直监听10000端口,等待用户连接。
8
在建立连接后给客户端返回一段信息,然后结束会话。这个程序一次只能接受一个客户连接。
客户端:使用Socket对网络上某一个服务器的某一个端口发出连接请求,一旦连接成功,打开会话;会话完成后,关闭Socket。客户端不需要指定打开的端口,通常临时的、动态的分配一个1024以上的端口。
{建立客户端} import java.io.*; import java.net.*; public class Client { Socket socket; BufferedReader in; PrintWriter out; public Client() { 9
try { socket = new Socket(\10000); in = new BufferedReader(new InputStreamReader(socket.getInputStream())); out = new PrintWriter(socket.getOutputStream(),true); BufferedReader line = new BufferedReader(new InputStreamReader(System.in)); out.println(line.readLine()); line.close(); out.close(); in.close(); socket.close(); 10
} catch (IOException e) {} } public static void main(String[] args) { new Client(); } } 这个客户端连接到地址为xxx.xxx.xxx.xxx的服务器,端口为10000,并从键盘输入一行信息,发送到服务器,然后接受服务器的返回信息,最后结束会话。[9]
11
2 系统需求分析
2.1 系统设计目标
根据对飞鸽传输系统的调查研究,本设计主要需要满足以下几个系统设计目标:
(1). 可靠性原则:必须为用户提供安全可靠的服务,尤其是要保证数据传输的稳定性。
(2). 实用性原则:按照真正为局域网的实际工作服务的要求,按照需求的大小,合理地设计本系统。
(3). 友好性原则:考虑到本系统的使用人群大众化,所以本系统操作上要求简单方便,便于用户掌握,界面上争取做到简洁美观。
(4). 可扩展性原则:本系统采用开放的标准和接口,方便于以后系统向更大的规模和功能扩展。[1]
2.2 系统总体需求分析
根据需求分析,本系统分为两个子系统:
(1).局域网内简单文字聊天子系统,它是在局域网内选择相应的用户,以便对之发送文字信息。
(2).文件、文件夹传输系统,它是在先把需要传输的文件、文件夹转换成相应的数据流进行传输,到了目的主机再进行还原。本系统的文字聊天子系统实现的功能类似于QQ、MSN用户之间的聊天。在设计系统时,应根据简
12