java实现TCP数据传输反馈

本文涉及的产品
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
简介: java实现TCP数据传输反馈

客户端:

1. 
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.*;
import java.util.Scanner;
public class TCPseed {
  public static void main(String[] args) {
    //创建Socket服务 字符输出流 读取流
    Socket s = null;
    PrintWriter out = null;
    BufferedReader bufIn = null;
    try {
      //指定IP地址和端口
      s = new Socket("这里填服务端IP地址", 10020);
      //指定输出流为s的网络输出流,并可以自动刷新
      out = new PrintWriter(s.getOutputStream(),true);
      //输入流为s的网络输入流
      bufIn = new BufferedReader(new InputStreamReader(s.getInputStream()));
    } catch (Exception e) {
      // TODO: handle exception
      e.printStackTrace();
    }
    Scanner input = new Scanner(System.in);
    String line = null;
    while(!("over".equals(line))) {
      line = input.nextLine();
      out.println(line);
      String str = null;
      try {
        str = bufIn.readLine();
      } catch (Exception e) {
        // TODO: handle exception
      }
      System.out.println(str);
    }
    try {
      bufIn.close();
      s.close();
      out.close();
    } catch (Exception e) {
      // TODO: handle exception
    }
  }
}

服务端:

import java.io.*;
import java.net.*;
public class TCPrece {
  //这里直接把异常抛出了
  public static void main(String[] args) throws Exception{
    //创建服务端对象,监听10020端口
    ServerSocket ss = new ServerSocket(10020);
    //用ServerSocket里面的accept方法获取客户端对象
    Socket s = ss.accept();
    //获取对方IP 并输出
    System.out.println(s.getInetAddress().getHostAddress()+"连接");
    BufferedReader bufIn = new BufferedReader(new InputStreamReader(s.getInputStream()));
    PrintWriter out = new PrintWriter(s.getOutputStream(),true);
    String str = null;
    while((str=bufIn.readLine())!=null) {
      System.out.println(str);
      //变成大写并返回
      out.println(str.toUpperCase());
    }
    ss.close();
    s.close();
    bufIn.close();
    out.close();
  }
}
相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
4月前
|
网络协议 Java
Java之UDP,TCP的详细解析
练习四:文件名重复
31 0
|
5月前
|
数据采集 网络协议 Java
Java爬虫框架下代理使用中的TCP连接池问题及解决方案
Java爬虫框架下代理使用中的TCP连接池问题及解决方案
|
7月前
|
网络协议 Java
Java TCP通信详解
TCP(Transmission Control Protocol)是一种面向连接的、可靠的网络传输协议,它提供了端到端的数据传输和可靠性保证。TCP通信适用于对数据传输的可靠性和完整性要求较高的场景,如文件传输、网页浏览等。本文将详细介绍Java中如何使用TCP协议进行网络通信,包括TCP套接字、服务器和客户端的创建、数据传输等。
130 0
|
6月前
|
网络协议 Java
【Java】TCP的三次握手和四次挥手
【Java】TCP的三次握手和四次挥手
|
10天前
|
网络协议 Java API
深度剖析:Java网络编程中的TCP/IP与HTTP协议实践
【4月更文挑战第17天】Java网络编程重在TCP/IP和HTTP协议的应用。TCP提供可靠数据传输,通过Socket和ServerSocket实现;HTTP用于Web服务,常借助HttpURLConnection或Apache HttpClient。两者结合,构成网络服务基础。Java有多种高级API和框架(如Netty、Spring Boot)简化开发,助力高效、高并发的网络通信。
|
5月前
|
监控 网络协议 Java
Java TCP长连接详解:实现稳定、高效的网络通信
Java TCP长连接详解:实现稳定、高效的网络通信
|
1月前
|
网络协议 Java
Java基于TCP的网络编程
Java基于TCP的网络编程
|
2月前
|
网络协议 Java 数据安全/隐私保护
如何使用Java实现基于TCP/IP协议的即时通讯系统
TCP/IP协议是现代计算机网络通信中最常用的协议之一,而即时通讯系统则是当前互联网应用中非常普遍的一种场景。本文将介绍如何使用Java编程语言来实现基于TCP/IP协议的即时通讯系统,包括建立服务端和客户端、发送和接收消息等方面的详细步骤和示例。
|
3月前
|
存储 网络协议 算法
TCP粘包问题与解决方案详解及Java代码演示
TCP粘包问题与解决方案详解及Java代码演示
29 0
|
8月前
|
网络协议 Java
Java TCP和UDP网络通信协议的详解
Java TCP和UDP网络通信协议的详解
60 0