java 网络编程 tcp黑马程序员学习笔记(4)

时间:2023-02-21 16:21:50

            ---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------


Socket and serverSocket 建立的tcp连接 测试使用只连接一次;

package udpsend;
import java.io.*;
import java.net.*;

//步奏
//建立socket对象


public class tcpclient {

public static void main(String args[]) throws Exception
{
  //创建客户端的socket服务,指定母的主机和端口
  Socket s=new Socket("192.168.0.110",10002);
  //为了发送数据,应该获取socket流中的输入流
  OutputStream out=s.getOutputStream();
  out.write("tcp ge men lai le".getBytes());
  s.close();
}

}

/*
* 需求:定义端点接受数据并打印在控制台上
*
* 服务端:
* 1.套接字,两端的端口。
* 建立服务端的socket服务,serversocket();兵谏亭一个端口
* 2.获取连接过来的客户端对象
* 通过seversocket的accept()方法,没有连接就会等。阻塞式方法
* 3.客户端吐过发过来数据,那么服务端要使用对应的客户对象
* 并获取该客户端对象的读取流队形
*
*/
 
class tcpserverclient {

public static void main(String args[]) throws Exception
{
  //创建服务端的socket服务,指定母的主机和端口
  ServerSocket ss=new ServerSocket(10002);
    //通过accetp()方法获取连过来的 客户端对象
Socket s=ss.accept();
  String ip =s.getInetAddress().getHostAddress();
System.out.println("guanbi");
  //获取客户段发送过来的数据,使用库端队形的读取流来读取数据
InputStream in=s.getInputStream();
  byte[] buf=new byte[1024];
  int len=in.read(buf);
  System.out.println(new String(buf,0,len));

  s.close();//关闭客户端
  ss.close();
}

}

                       ----------------------ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------