/*
* TCP客户端和服务端之间的一来一回,就没了,是怎么实现的
*/
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
/*
* 演示TCP传输的客户端和服务端的互访:
* 需求:客户端给服务端发送数据,服务端收到数据后给客户端反馈信息
* 客户端:
* 1:建立socket服务。指定要连接的主机和端口
* 2:获取socket流中的输出流,将数据写到该流中,通过网络发送给服务端
* 3:获取socket流中的输入流,将服务端反馈的数据获取到并打印
* 4:关闭客户端资源。
*/
public class TCPDemo2 {
}
//服务端
class TCPServer2{
public static void main(String[] args) throws Exception{
ServerSocket ss=new ServerSocket(8888);
Socket s=ss.accept();
String ip=s.getInetAddress().getHostAddress();//获取ip地址
System.out.println(ip+"...... is connected");
InputStream in=s.getInputStream();
byte[]buf=new byte[1024];
int len =in.read(buf);
System.out.println(new String(buf,0,len ) );
OutputStream out=s.getOutputStream();
out.write("gemen shoudao ".getBytes());
s.close();
ss.close();
}
}
//客户端
class TCPClient2{
public static void main(String[] args) throws Exception {
Socket s=new Socket("127.0.0.1", 8888);
OutputStream out=s.getOutputStream();
out.write("服务端你好".getBytes());
InputStream in=s.getInputStream();
byte[] buf=new byte[1024];
int len =in.read(buf);
System.out.println(new String(buf,0,len));
s.close();
}
}