实验六 基于socket实现C/S的简单通信

【实验目的】

⑴ 理解Socket的概念;

⑵ 掌握Socket编程的方法。

【实验环境】

JDK1.6,安装有Java集成开发环境的Windows计算机。

【实验基础知识】

1. 套接字有不同的类型,流式套接字提供可靠、面向连接的服务,其使用TCP协议;数据报套接字提供种无连接的服务,数据通过相互独立的报文进行传输,不保证可靠、顺序、无差错。原始套接字主要用于一些协议的开发,可以进行比较底层的操作,但操作较复杂,一般程序使用较少。

2. 流式Socket通信的一般过程:

【实验内容和步骤】

⑴ 写出源代码中客户端和服务器Socket对象、输入输出流、读写方法以及程序流程。

第一步是建立连接,查找边上的同学的IP地址,再查找本机的IP地址,在客户端里面的代码里面socket = new Socket("192.168.94.47", 10000);

将IP地址改成边上同学的电脑IP地址;

第二步是在Java里面建立新的包创建新的类分别为Myserver与Myclient,建立完成之后,在客户端代码里面输入想要输入的内容,再在服务器输入想要输入的;

第三步先运行Myserver类,然后再运行Myclient类,之后就运行出来啦。

⑵ 编写客户端程序,从键盘上输出小写字母;编写服务器端程序,服务器根据接收到的字符串进行转换,将小写字母转化为大写字母,并且将转换后的字符串返回给客户机。

代码:客户端

Scanner sc = new Scanner(System.in);

System.out.println("连接服务器的10000端口!");

socket = new Socket("192.168.94.47", 10000);

input = new DataInputStream(socket.getInputStream());

//outputStream out=socket.getOutputStream();

output = new DataOutputStream(socket.getOutputStream());

//2.向服务器端发送字符串

String str = sc.next();

output.writeUTF(str);//发送

代码:服务器

String inStr=input.readUTF();  //接收数据

System.out.println(inStr);

//3.向客户端发送字符串

inStr=inStr.toUpperCase();

output.writeUTF(inStr);//发送数据

【实验总结】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值