黑马程序员技术交流社区
标题: 基础班菜鸟~~求大声帮忙~~~ [打印本页]
作者: 黑马_小漒 时间: 2014-8-18 22:03
标题: 基础班菜鸟~~求大声帮忙~~~
:handshake基础班才了15天课,走流程,遇到没学过的难题,求大神帮忙~~~:handshake
使用TCP协议完成一个客户端一个服务器。客户端从键盘输入读取一个字符串,发送到服务器。
服务器接收客户端发送的字符串,反转之后发回客户端。客户端接收并打印。
作者: 玥夜 时间: 2014-8-18 22:22
- package com.itheima;
- /*10、 使用TCP协议完成一个客户端一个服务器。客户端从键盘输入读取一个字符串,发送到服务器。
- * 服务器接收客户端发送的字符串,反转之后发回客户端。客户端接收并打印。
- * 思路:
- * 客户端:
- * 1.建立Socket服务,明确地址值和端口。
- * 2.获取键盘录入。
- * 客户端的数据 源:键盘 目的:Socket
- * 3.将数据传送到服务端
- * 4.获取返回数据,并打印。
- * 接受服务器的数据 源:Socket 目的:控制台
- * 4.关闭资源。
- * 服务端:
- * 1.建立ServerSocket服务。
- * 2.获取socket对象。
- * 3.源:socket,读取客户端发过来的需要转换的数据。
- * 4.目的:显示在控制台上。
- * 5.将数据转成大写发给客户端。
- * 6.关闭资源。
- * */
- import java.net.*;
- import java.io.*;
- public class Test10 {
- public static void main(String[] args)
- {
- }
- }
- class kehuduan
- {
- public static void main(String[] args) throws Exception
- {
- //建立Socket服务,明确地址值和端口
- Socket s= new Socket("121.17.151.182",10002);
-
- //定义读取键盘数据的流对象
- BufferedReader bufr= new BufferedReader(new InputStreamReader(System.in));
- //定义目的,将数据写到Socket输出流
- BufferedWriter bufwOut= new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
- //定义Socket输入了,读取服务端返回的数据
- BufferedReader bufrIn= new BufferedReader(new InputStreamReader(s.getInputStream()));
- String line= null;
- while((line=bufr.readLine())!=null)
- {
- if("over".equals(line))
- break;
- bufwOut.write(line);
- bufwOut.newLine();
- bufwOut.flush();
-
- String str=bufrIn.readLine();
- System.out.println(str);
- }
- //关闭资源
- bufr.close();
- s.close();
- }
- }
- class fuwuduan
- {
- public static void main(String[] args) throws Exception
- {
- //建立ServerSocket服务
- ServerSocket ss= new ServerSocket(10002);
- Socket s= ss.accept();
-
- String ip= s.getInetAddress().getHostAddress();
- System.out.println(ip+"连上了");
- //读取Socket输入流中的数据
- BufferedReader bufrIn= new BufferedReader(new InputStreamReader(s.getInputStream()));
- //目的,Socket输出流,将字符串反转并写入到输出流,发送给客户端
- BufferedWriter bufwOut= new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
- String line= null;
- while((line=bufrIn.readLine())!=null)
- {
- System.out.println(line);
- StringBuffer sb= new StringBuffer(line);
- bufwOut.write(sb.reverse().toString());
- bufwOut.newLine();
- bufwOut.flush();
- }
- //关闭资源
- s.close();
- ss.close();
- }
- }
复制代码
作者: 玥夜 时间: 2014-8-18 22:24
你学的好快啊 15天都弄到网络了
作者: 华谦 时间: 2014-8-19 08:52
里面涉及的内容是我们必须要掌握的,楼主还是要自己努力:handshake
作者: 黑马_小漒 时间: 2014-8-20 00:31
非常感谢~~各位前辈的支持和鼓励,一定会好好努力的,谢谢大家~~
作者: 戏言丶 时间: 2014-8-20 00:57
我也在学习,但是是自学的。一起努力
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |