Java Socket编程服务器响应客户端实例代码

Java Socket编程是一种网络编程方法,用于在客户端和服务器端之间建立连接,并进行数据传输。在Java中,可以使用Socket和ServerSocket类实现Socket编程。客户端使用Socket类创建连接,服务器端使用ServerSocket类监听连接请求。在本篇文章中,我们将为你提供 “Java Socket编程服务器响应客户端实例代码”的完整攻略,包括以下内容:

  1. 创建服务器端程序
  2. 创建客户端程序
  3. 编写实例代码

以下是一些示例代码,以帮助你更好地理解Socket编程过程:

创建服务器端程序

import java.io.*;
import java.net.*;

public class Server {
    public static void main(String args[]) throws Exception {
        ServerSocket server = new ServerSocket(9999);
        Socket client = server.accept();

        BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream())); 
        DataOutputStream out = new DataOutputStream(client.getOutputStream());

        String clientMessage = in.readLine();
        System.out.println("客户端发送的信息是:" + clientMessage);
        out.writeBytes("你好,客户端");

        in.close();
        out.close();
        client.close();
        server.close();
    }
}

在上述代码中,我们使用ServerSocket类创建一个服务器端,并等待客户端的连接。如果客户端连接成功,我们将创建一个输入流和一个输出流,用于与客户端通信。在这种情况下,我们使用BufferedReader来读取客户端发送的消息,使用DataOutputStream来向客户端发送响应信息。

创建客户端程序

import java.io.*;
import java.net.*;

public class Client {
    public static void main(String args[]) throws Exception {
        Socket client = new Socket("localhost", 9999);

        BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream())); 
        DataOutputStream out = new DataOutputStream(client.getOutputStream());

        out.writeBytes("你好,服务器端");
        String serverMessage = in.readLine();
        System.out.println("服务器端发送的信息是:" + serverMessage);

        in.close();
        out.close();
        client.close();
    }
}

在上述代码中,我们使用Socket类创建一个客户端,并连接到服务器端。我们创建了一个输入流和一个输出流,用于与服务器端通信。在这种情况下,我们使用DataOutputStream将“你好,服务器端”发送到服务器端,然后使用BufferedReader读取服务器端的响应消息。

编写实例代码

在本节中,我们将结合以上示例程序,编写一个完整的Socket编程实例代码。以下是完整代码:

服务器端代码

import java.io.*;
import java.net.*;

public class Server {
    public static void main(String args[]) throws Exception {
        ServerSocket server = new ServerSocket(9999);
        System.out.println("服务器已经启动,正在等待客户端连接......");
        Socket client = server.accept();
        System.out.println("已连接客户端地址:" + client.getInetAddress());

        BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));
        DataOutputStream out = new DataOutputStream(client.getOutputStream());

        String clientMessage = in.readLine();
        System.out.println("客户端发送的消息是:" + clientMessage);
        out.writeBytes("你好,客户端");

        in.close();
        out.close();
        client.close();
        server.close();
    }
}

客户端代码

import java.io.*;
import java.net.*;

public class Client {
    public static void main(String args[]) throws Exception {
        Socket client = new Socket("localhost", 9999);
        System.out.println("客户端已经连接到服务器端......");

        BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));
        DataOutputStream out = new DataOutputStream(client.getOutputStream());

        out.writeBytes("你好,服务器端");
        String serverMessage = in.readLine();
        System.out.println("服务器端的响应消息是:" + serverMessage);

        in.close();
        out.close();
        client.close();
    }
}

在结束上述实例代码运行后,首先运行服务器端程序。在控制台窗口中,将看到“服务器已经启动,正在等待客户端连接......”的消息。接着,运行客户端程序,在控制台窗口中将看到“客户端已经连接到服务器端......”的消息。客户端程序会向服务器端发送一条消息,以测试与服务器端的通信是否正常。最后,服务器端会接收到该消息并返回一条响应消息。客户端程序将显示服务器端发送的响应消息。这表明客户端成功地与服务器端进行了通信。

以上是Java Socket编程服务器响应客户端实例代码的完整攻略,包括创建服务器端程序、创建客户端程序和编写实例代码的步骤。通过本文所提供的示例代码,你将了解如何在Java中使用Socket实现客户端和服务器端之间的通信。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java Socket编程服务器响应客户端实例代码 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • 浅谈Web Storage API的使用

    浅谈Web Storage API的使用 什么是Web Storage API? Web Storage API是HTML5标准中的一个新的特性,用于在客户端存储数据,能够放置较为复杂的数据类型。它分为sessionStorage和localStorage两类,前者在用户关闭浏览器之后数据被清空,而后者则是永久性存储。 Web Storage API的用法 …

    Vue 2023年5月28日
    00
  • vue3的hooks用法总结

    当谈到Vue 3中新的功能时,不得不提的是它的Hooks。Hooks是一种新的组件API,它可以让我们在函数组件中使用状态和其他React类组件中使用的功能。它在处理组件逻辑时很实用,特别是在实现可重用性和分离关注点方面。 在Vue 3中,我们可以使用若干个Hooks,包括setup、ref、reactive、watch、computed、provide、i…

    Vue 2023年5月28日
    00
  • Vue select 绑定动态变量的实例讲解

    下面我将详细讲解如何在Vue中使用select绑定动态变量的实例攻略。 首先,我们需要导入Vue.js,然后创建Vue实例,并在该实例的data属性中定义我们需要绑定的动态变量(这里我们定义一个变量名为selectedValue)。然后我们需要在Vue实例中声明一个options对象,其中包含一个数组,该数组中包含我们需要绑定到select元素的选项。最后,…

    Vue 2023年5月29日
    00
  • 使用vue实现计时器功能

    下面是使用Vue实现计时器功能的完整攻略: 1. 准备工作 首先需要在你的项目中引入Vue.js。这里提供两种引入Vue.js的方式: 在HTML页面中通过CDN引入Vue.js。在标签中添加以下代码: <script src="https://unpkg.com/vue"></script> 通过npm安装Vue…

    Vue 2023年5月28日
    00
  • vue实现移动端拖动排序

    下面我将为您详细讲解“vue实现移动端拖动排序”的完整攻略。 1. 安装vue相关依赖 首先需要安装vue相关依赖,包括vue本身以及vue移动端手势库vue-touch。 npm install vue –save npm install vue-touch@next –save 2. 引入vue相关依赖 在你的vue项目入口文件中引入vue及vue-…

    Vue 2023年5月29日
    00
  • Vue3基于countUp.js实现数字滚动的插件

    Vue3基于countUp.js实现数字滚动的插件就是一个可以在Vue3中方便地实现数字滚动效果的插件。下面将介绍实现该插件的完整攻略: 确认需求和安装countUp.js 首先需要明确需求,确认需要实现数字滚动的具体元素和动画效果等。然后需要安装countUp.js插件,在Vue3项目中引入countUp.js的CDN链接或安装countUp.js的NPM…

    Vue 2023年5月27日
    00
  • Vue3和Electron实现桌面端应用详解

    “Vue3和Electron实现桌面端应用详解”可以拆分为两部分进行讲解,即Vue3和Electron的介绍与实现 Vue3介绍与实现 Vue3介绍 Vue3是Vue.js的最新版本,相较于Vue.js 2,Vue3做了大量的重构和优化。其中,重构和优化最显著的一个方面是Vue3的核心代码由Monorepo改为了Tree-Shaking优化的方式,使得应用的…

    Vue 2023年5月27日
    00
  • 基于vite2+vue3制作个招财猫游戏

    下面是基于vite2+vue3制作招财猫游戏的攻略,包括如何搭建开发环境、创建基本项目结构、编写代码、调试和打包等步骤: 1. 搭建开发环境 首先需要安装Node.js,然后通过npm全局安装vite和vue: npm install -g vite vue 2. 创建项目 在终端中进入想要创建项目的目录下执行以下命令: mkdir zhao-cai-mao…

    Vue 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部