java实现socket从服务器连续获取消息的示例

时间:2021-10-22 02:50:55 

服务器端我们用软件模拟,是一个很小巧的软件,下载软件NetAssist:http://xiazai.jb51.net/201403/tools/NetAssist(jb51.net).rar

java实现socket从服务器连续获取消息的示例

第二步贴上我们客户端的代码:


import java.io.DataInputStream;

import java.io.IOException;
import java.net.Socket;

public class Client { 
    public static final String IP_ADDR = "192.168.3.65";//服务器地址  
    public static final int PORT = 8080;//服务器端口号   
    static String text = null;

 public static void main(String[] args) throws IOException {   
        System.out.println("客户端启动...");
        Socket socket = null; 
        socket = new Socket(IP_ADDR, PORT);   
        while (true) {   
            try { 
                //创建一个流套接字并将其连接到指定主机上的指定端口号 
                //读取服务器端数据   
                DataInputStream input = new DataInputStream(socket.getInputStream());   

    byte[] buffer;
    buffer = new byte[input.available()];
    if(buffer.length != 0){
    System.out.println("length="+buffer.length);
    // 读取缓冲区
    input.read(buffer);
    // 转换字符串
    String three = new String(buffer);
    System.out.println("内容=" + three);
    }
            } catch (Exception e) { 
                System.out.println("客户端异常:" + e.getMessage());  
            }
        }   
    }
}

可以看到打印结果如下:
length表示消息的长度


客户端启动...
length=27
内容=https://www.jb51.net

好了,一个socket客户端我们就完成了,这个是可以一直接收服务器发过来的消息的。

标签:java,socket
0
投稿

猜你喜欢

  • Mybatis如何传入多个参数的实现代码

    2022-02-26 02:52:24
  • Java中常用缓存Cache机制的实现

    2023-05-27 23:32:22
  • Java BigDecimal使用方法详解

    2022-03-28 03:45:23
  • Spring注解@DependsOn解析

    2022-01-11 08:20:35
  • 在idea中显示springboot面板的方法

    2022-01-02 22:00:57
  • SpringBoot整合RocketMQ的详细过程

    2023-07-10 05:07:00
  • Java VisualVM监控远程JVM(详解)

    2022-07-10 15:59:15
  • SpringBoot集成gRPC微服务工程搭建实践的方法

    2022-03-11 22:10:39
  • C#复制数组的两种方式及效率比较

    2023-07-15 04:19:12
  • Java spring的三种注入方式详解流程

    2021-07-02 12:25:47
  • Java实现常见排序算法的优化

    2022-05-20 13:08:37
  • SpringMVC框架实现图片上传与下载

    2022-01-12 23:50:52
  • Quarkus中ConfigSourceInterceptor的加密配置实现

    2021-10-08 10:47:14
  • C#向word文档插入新段落及隐藏段落的方法

    2022-04-11 16:29:10
  • Java单例模式的8种写法(推荐)

    2023-01-06 14:23:27
  • 新手小白学JAVA IDEA下载使用手册全集

    2023-11-23 14:33:23
  • Java8中对于LocalDateTime的序列化和反序列化问题

    2023-11-14 15:37:41
  • 简单分析Java的求值策略原理

    2022-03-22 19:14:00
  • Java中OAuth2.0第三方授权原理与实战

    2021-09-27 01:48:57
  • Java开发之Lombok指南

    2022-11-19 21:49:28
  • asp之家 软件编程 m.aspxhome.com