zoukankan      html  css  js  c++  java
  • TCP通讯

    /*
    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) 
    	{
    		
    	}
    }
    

  • 相关阅读:
    ubuntu下常用的apt-get 命令参数
    探索equals()和hashCode()方法
    Java多线程编程核心技术
    线程的状态
    详解Java中的clone方法
    为什么String类是不可变的?
    深入理解final和static关键字
    彻底理解ThreadLocal
    反射消除String类对象的不可变特性
    进程和线程
  • 原文地址:https://www.cnblogs.com/dengshiwei/p/4258422.html
Copyright © 2011-2022 走看看