java实验第六章,第六章java网络编程实验指导书

《第六章java网络编程实验指导书》由会员分享,可在线阅读,更多相关《第六章java网络编程实验指导书(7页珍藏版)》请在人人文库网上搜索。

1、第XX章java网络编程 实验指导书实验目标:掌握套接字相关类的使用,掌握Web相关类的使用。第一部分 指导(50分钟)Java.net包提供了支持基于套接字的客户端/服务器通信的类。Socket、ServerSocket、DatagramSocket类可实现用于面向连接的通信和无连接的同喜的客户端和服务器套接字。DatagramPacket类用于构造UDP数据报报文。套接字相关类的使用:以下是一个套接字的程序,在此程序中客户端将向服务器发送请求,而服务器将接收发送给它的请求并将其写入文件。下列程序有用于服务器和客户端程序的代码,客户端程序和服务器程序应该同一机器上运行。在运行FClient程。

2、序之前要先运行FServer。完成客户端的步骤如下:1. 创建一个具有服务器IP地址和端口号的Socket对象。Socket soc=new Socket(localhost,4001);2. 客户端接受输入。BufferedReader br=new BufferedReader(new InputStreamReader(System.in);System.out.println(请输入消息至服务器);String message=;String temp;while(!(temp=br.readLine().equals(send)message=message+temp+n;3. 客户。

3、端向服务器发送请求。PrintStream ps=new PrintStream(soc.getOutputStream();ps.print(message);4. 关闭PrintStream和Socket对象ps.close();soc.close();下面看一下完整的程序。1 创建FClient.java。并键入下列的代码。import java.io.BufferedReader;import java.io.InputStreamReader;import java.io.PrintStream;import java.net.Socket;public class FClient 。

4、public static void main(String args) throws Exception Socket soc=new Socket(localhost,4001);BufferedReader br=new BufferedReader(new InputStreamReader(System.in);System.out.println(请输入消息至服务器);String message=;String temp;while(!(temp=br.readLine().equals(send)message=message+temp+n;PrintStream ps=new。

5、 PrintStream(soc.getOutputStream();ps.print(message);ps.close();soc.close();2 将程序以FClient.java 保存完成服务器端程序代码步骤如下:1. ServerSocket对象等待客户端在端口号4001上建立连接。ServerSocket ss=new ServerSocket(4001);2. 一旦客户端建立连接,accept()方法即被调用以接受连接。Socket soc=ss.accept();3. 服务器接受请求。BufferedReader br=new BufferedReader(new Input。

6、StreamReader(soc.getInputStream();String message=;String temp=null;dotemp=br.readLine();if(temp=null)break;message=message+temp;while(true);br.close();4. 服务器将请求写入文件。PrintStream ps=new PrintStream(new FileOutputStream(message.txt);ps.println(message);ps.close();下面看一下完整的程序。1. 创建FServer.java。并键入下列的代码。i。

7、mport java.io.BufferedReader;import java.io.FileOutputStream;import java.io.InputStreamReader;import java.io.PrintStream;import java.net.ServerSocket;import java.net.Socket;public class FServer public static void main(String args)throws ExceptionServerSocket ss=new ServerSocket(4001);Socket soc=ss.a。

8、ccept();BufferedReader br=new BufferedReader(new InputStreamReader(soc.getInputStream();String message=;String temp=null;dotemp=br.readLine();if(temp=null)break;message=message+temp;while(true);br.close();PrintStream ps=new PrintStream(new FileOutputStream(message.txt);ps.println(message);ps.close()。

9、;System.out.println(已存储消息);2.将程序以FServer.java 保存运行程序,A先运行FServer 运行服务器端。B运行FClient 运行客户端在出现消息“输入消息至服务器”后,然后输入下列文本。This is an example for Socket related classes Welcome to socket program键入send 并按下回车键,输入的信息将保存早message.txt文件中。以上程序的输出结果如图1.1和1.2所示。图1.1图1.2第二部分 练习(50分钟)修改本阶段的第一部分中完成的程序,是服务器将向客户端返回响应。提示:客。

10、户端代码包含下列步骤:a 创建一个具有服务器IP地址和端口号的Socket对象,以创建至服务器的连接。b 客户端接收服务器发送的响应c 在客户端上显示响应d 不安比PrintStream和Socket对象。服务器代码包含下列步骤:a ServerSocket对象等待客户端在某端口号上建立连接。b 一旦客户端建立连接,accept()方法即被调用以接受连接。c 服务器接收请求。d 编写对客户端的响应。e 关闭服务器和客户端的套接字。客户端代码如下:import java.io.BufferedReader;import java.io.InputStream;import java.io.Inp。

11、utStreamReader;import java.io.OutputStream;import java.io.OutputStreamWriter;import java.io.PrintStream;import java.io.PrintWriter;import java.net.Socket;public class FClient public static void main(String args) throws Exception Socket soc=new Socket(localhost,4001);System.out.println(Connection to 。

12、Server);BufferedReader b=new BufferedReader(new InputStreamReader(System.in);InputStream in=soc.getInputStream();BufferedReader br=new BufferedReader(new InputStreamReader(System.in);OutputStream out=soc.getOutputStream();PrintWriter pw=new PrintWriter(new OutputStreamWriter(out);String k=;while(!k.。

13、equals(stop)k=b.readLine();pw.println(k);pw.flush();k=br.readLine();System.out.println(k);pw.close();br.close();soc.close();服务器端代码如下:import java.io.BufferedReader;import java.io.FileOutputStream;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.io.Ou。

14、tputStreamWriter;import java.io.PrintStream;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.Socket;public class FServer public static void main(String args)throws ExceptionServerSocket ss=new ServerSocket(4001);System.out.println(Waiting for Client);Socket soc=ss.accept();Sys。

15、tem.out.println(Connection to Client);InputStream in=soc.getInputStream();BufferedReader br=new BufferedReader(new InputStreamReader(soc.getInputStream();OutputStream out=soc.getOutputStream();PrintWriter pw=new PrintWriter(new OutputStreamWriter(out);String str=;while(!str.equals(stop)str=br.readLine();System.out.println(str);pw.println(str);pw.flush();pw.close();br.close();第三部分 作业编写一个类似于聊天的应用程序。应用程序界面如下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值