package cn.itcast_07;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
/*
* TCP协议接收数据:
* A:创建接收端Socket对象
* B:监听客户端
* C:获取输入流,显示到客户端
* D:返馈数据
* D:释放监听资源
*/
public class ServerDemo {
public static void main(String[] args) throws IOException {
// 创建接收端Socket对象
ServerSocket ss = new ServerSocket(12306);
// 监听客户端
Socket s = ss.accept();
// 获取输入流
InputStream is = s.getInputStream();
byte[] bys = new byte[1024];
int len = is.read(bys);
String server = new String(bys, 0, len);
System.out.println("server:" + server);
// 获取输出流
OutputStream os = s.getOutputStream();
os.write("嘿,tcp,你的数据我收到了".getBytes());
// 释放监听资源
s.close();
}
}
package cn.itcast_07;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
/*
* TCP协议发送端:
* A:创建发送端对象Socket
* B:获取输出流,发送数据
* C:获输入流,接收返馈数据并显示到控制台
* D:释放资源
*/
public class ClientDemo {
public static void main(String[] args) throws IOException {
// 创建发送端对象Socket
Socket s = new Socket("192.168.31.165", 12306);
// 获取输出流
OutputStream os = s.getOutputStream();
os.write("hello,tcp,我来了".getBytes());
// 获取输入流
InputStream is = s.getInputStream();
byte[] bys = new byte[1024];
int len = is.read(bys);
String client = new String(bys, 0, len);
System.out.println("client:" + client);
// 释放资源
s.close();
}
}