s-day11-TCP的客户端的实现

This commit is contained in:
2026-08-14 10:15:30 +08:00
parent 952f7a1734
commit bd8e266e3e
@@ -0,0 +1,48 @@
package com.inmind.tcp03;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
/*
TCP的客户端的实现
在java中使用一个类Socket表示客户端
构造方法:
Socket(String host, int port) 创建流客户端并将其连接到指定主机(IP地址)上的指定端口号。
参数一host:要请求服务的服务器的ip地址
参数二port:要请求服务的服务器上的软件端口号
常用方法:
void close() 关闭此套接字。
InetAddress getInetAddress() 返回套接字所连接的地址。
InputStream getInputStream() 返回此套接字的输入流.(接收响应数据的)
OutputStream getOutputStream() 返回此套接字的输出流。 (发送请求)
void shutdownOutput() 禁用此套接字的输出流 (设置了一个发送请求数据的结束标记)
客户端的实现步骤(对照IO图说明API的作用):
1.创建客户端对象
2.获取字节输出流发送请求数据
3.获取字节输入流接收响应数据
4.释放资源
*/
public class TcpClientDemo06 {
public static void main(String[] args) throws Exception {
//1.创建客户端对象192.168.23.107
Socket socket = new Socket("127.0.0.1", 10024);
//2.获取字节输出流发送请求数据
OutputStream os = socket.getOutputStream();
os.write("淘宝的官网".getBytes());
//告诉服务器,请求数据结束标记
socket.shutdownOutput();
//3.获取字节输入流接收响应数据
InputStream is = socket.getInputStream();
//一次读取一个字节数组
byte[] bytes = new byte[1024];
int len;
while ((len = is.read(bytes)) != -1) {
System.out.println(new String(bytes,0,len));
}
//4.释放资源
socket.close();
}
}