java网络编验一.docVIP

  • 1
  • 0
  • 约9.77千字
  • 约 5页
  • 2016-10-12 发布于贵州
  • 举报
java网络编验一

青 岛 理 工 大 学 课程实验报告 课程名称 Java网络程序设计 班级 网络122 实验日期 2015.9.21 姓名 钱鹏飞 学号 201207160 实验成绩 实验名称 实验1 简单的客户/服务器通信 实 验 目 的 及 要 求 1. 实现基于Socket的简单客户/服务器通信 实 验 环 境 1. Windows 7 2. eclipse 实 验 内 容 分别编写基于Socket的客户程序和服务器程序,在Java虚拟机环境下运行,使得客户程序和服务器程序能够简单地进行通信。 调 试 过 程 及 实 验 结 果 一 、实验过程: 1、编写客户端程序: (1)创建客户端Socket,连接服务器端主机和端口。 (2)获取和服务器端Socket进行数据通信的输入流,并通过该输入流读取服务器端发送来的数据。 (3)获取和服务器端Socket进行数据通信的输出流,并通过该输出流向服务器端写数据。 2、编写服务器端程序: (1)创建服务器端ServerSocket,并与本地固定端口绑定。 (2)等待客户连接,直到连接成功,创建服务器端Socket。 (3)获取和客户端Socket进行数据通信的输入流,通过该流读取客户端发送的数据。 (4)获取和客户端Socket进行数据通信的输出流,通过该流向客户端写数据。 3、编译客户端和服务器端程序,并生成相应的类文件。 4、先运行服务端程序,再运行客户端程序,然后二者进行数据通信。 实验结果如下截图: . 1.服务器启动,客户机与服务器进行通信并得到服务器响应。 2. 客户端发送特定字符串“bye!”结束与服务器的通信。 源 程 序 代 码 ////Client.java import java.net.*; import java.io.*; import java.util.*; public class EchoClient { private String host=localhost; private int port=8000; private Socket socket; public EchoClient()throws IOException{ socket=new Socket(host,port); } public static void main(String args[])throws IOException{ new EchoClient().talk(); } private PrintWriter getWriter(Socket socket)throws IOException{ OutputStream socketOut = socket.getOutputStream(); return new PrintWriter(socketOut,true); } private BufferedReader getReader(Socket socket)throws IOException{ InputStream socketIn = socket.getInputStream(); return new BufferedReader(new InputStreamReader(socketIn)); } public void talk()throws IOException { try{ BufferedReader br=getReader(socket); PrintWriter pw=getWriter(socket); BufferedReader localReader=new BufferedReader(new InputStreamReader(System.in)); String msg=null; while((msg=localReader.readLine())!=null){ pw.println(msg); System.out.println(br.readLine()); if(msg.equals(bye)) break; } }catch(IOException e){ e.printStackTrace(); }finally{ try{socket.close();}catch(IOExcepti

文档评论(0)

1亿VIP精品文档

相关文档