《Java TCP套接字编程实验报告.doc》由会员分享,可在线阅读,更多相关《Java TCP套接字编程实验报告.doc(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、广州大学学生实验报告开课学院及实验室:电子楼418A 室 2014年 12 月 20 日学院计算机院年级、专业、班网络工程113班姓名曾俊峰学号实验课程名称网络编程成绩实验项目名称TCP套接字编程指导老师樊志平一、实验目的 1.提高TCP套接字编程的认识。 2.针对不同的模块、功能,书写一些实现代码。二、使用仪器、器材微机一台操作系统:WinXP编程软件:Myeclipse三、实验内容及原理 类 Socket此类实现客户端套接字(也可以就叫“套接字”)。套接字是两台机器间通信的端点。 套接字的实际工作由 SocketImpl 类的实例执行。应用程序通过更改创建套接字实现的套接字工厂可以配置它自
2、身,以创建适合本地防火墙的套接字。 BufferedReader 字符缓冲接收流BufferedWriter字符缓冲发送流四、 实验过程原始数据记录Client:package MyTCP;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import .Socket;import .UnknownHostException;import
3、java.util.Scanner;public class TcpsocketCient public static void main(String args) Socket socket=null;BufferedReader br=null;BufferedWriter bw=null; try socket=new Socket(127.0.0.1,8888); br=new BufferedReader(new InputStreamReader(socket.getInputStream(); bw=new BufferedWriter(new OutputStreamWrite
4、r(socket.getOutputStream(); System.out.println(请输入你想发给服务器的信息); Scanner sca=new Scanner(System.in); String str= sca.next(); bw.write(str); bw.newLine(); bw.flush(); String info=br.readLine(); System.out.println(服务器回应你说-); System.out.println(info); catch (UnknownHostException e) e.printStackTrace(); c
5、atch (IOException e) e.printStackTrace();Server:package MyTCP;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import .ServerSocket;import .Socket;import java.util.Scanner;public class TcpsocketS
6、ever public static void main(String args) ServerSocket ss=null;Socket socket=null;BufferedWriter bw=null;BufferedReader br=null;try ss= new ServerSocket(8888);socket=ss.accept(); br=new BufferedReader(new InputStreamReader(socket.getInputStream(); bw=new BufferedWriter(new OutputStreamWriter(socket.
7、getOutputStream();String info=br.readLine();System.out.println(客户端说-+info);System.out.println(输入你想对客户端说的话);Scanner sac=new Scanner(System.in);String str= sac.next();bw.write(str);bw.newLine();bw.flush(); catch (IOException e) e.printStackTrace();实验截图:客户端服务器五、 实验结果及分析TCP套接字工作流程:一、服务器创建一个ServerSocket指定端口号, 使用public Socket accept()来监听来自客户端发起的socket监听到后,使用指定端口与客户端简历TCP链接二、客户端创建一个socket指定服务器Ip地址和端口号 与服务器建立连接。三、客户端和服务器分别创建字符缓冲流用于接收消息 BufferedReader br BufferedWriter bw必须通过Socket.get的方式来创建流。因为java在底层已经给socket指定了唯一的流四、服务器和客户端通过流接收和发送消息五、使用完流和socket后最好关闭
限制150内