/* TCP传输:客户端和服务端 Socket:实现客户端的套接字,可以构造空、地址和端口的,通过api发现,该对象建立时就要指定主机,因为tcp面向连接,所以 在建立Socket服务时,就要有服务端的额存在,并连接成功,形成通路。 步骤: 1、建立Socket服务,并指定主机和端口。 ServerSocket: */ import java.io.*; import java.net.*; import java.lang.Exception; class TcpClient { public static void main(String[] args) throws Exception { Socket s = new Socket("122.88.30.178",10001); OutputStream os = s.getOutputStream(); os.write("tcp start".getBytes()); } } /* 服务器端: 1、创建服务器端socket服务,并监听一个端口、ServerSocket 2、获取连接过来的客户端对象。accept()方法时阻塞式 3、客户端如果发来数据,那么服务器端要使用客户端对象的对象,并获取该客户端对象的读取流操作。 4、关闭服务器(一般不关闭) */ class TcpServer { public static void main(String[] args) throws Exception { // 创建服务端socket服务 ServerSocket ss = new ServerSocket(10001); //获取客户端的对象 Socket s = ss.accept(); //获取客户端发送的数据,使用客户端对象获取流 InputStream in = s.getInputStream(); byte [] buf = new byte[1024]; int len = in.read(buf); System.out.println(new String(buf,0,len)); String ip = s.getInetAddress().getHostAddress(); System.out.println(ip + "connected"); } } class TcpDemo { public static void main(String[] args) { } }