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

yizhihongxing

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日

相关文章

  • vue $refs动态拼接获取值问题

    来讲一下“Vue $refs动态拼接获取值问题”的攻略。 问题描述 Vue中提供了$refs来获取dom元素,但是如果我们需要动态拼接$refs的属性名,则会遇到一个问题:无法使用动态拼接的方式获取到$refs的值。 以下是一个例子: <div v-for="item in items" :ref="`item-${ite…

    Vue 2023年5月27日
    00
  • Vue.js每天必学之内部响应式原理探究

    Vue.js每天必学之内部响应式原理探究 前言 Vue.js是一款前端框架,拥有许多优秀的特性,如组件化、响应式等,其中响应式即是Vue.js最为核心的部分之一。本文主要讲解Vue.js的响应式原理、数据双向绑定、getter与setter等内容。 Vue.js响应式原理 Vue.js的响应式原理包含以下步骤:1. 创建一个Vue实例。2. 在Vue实例中设…

    Vue 2023年5月28日
    00
  • vue2.0实现前端星星评分功能组件实例代码

    下面我将为你详细讲解“vue2.0实现前端星星评分功能组件实例代码”的完整攻略。 1. 安装依赖 首先,我们需要在项目中安装vue-router,并且在前端界面中安装vue2-star-rating这个插件。在终端中输入以下命令: npm install vue-router npm install vue2-star-rating 2. 路由配置 接下来,…

    Vue 2023年5月28日
    00
  • windows下vue.js开发环境搭建教程

    下面是“Windows下Vue.js开发环境搭建教程”的完整攻略: 步骤一:安装Node.js 在Windows下搭建Vue.js开发环境之前,需要先安装Node.js。 在Node.js的官网(https://nodejs.org/en/)下载最新版本的Node.js安装包。 下载完成后,双击运行安装程序,并按照指示选择默认安装即可。 安装完成后,可以在命…

    Vue 2023年5月28日
    00
  • vue+elementUI(el-upload)图片压缩,默认同比例压缩操作

    首先需要明确的是,针对 vue+elementUI(el-upload) 图片压缩的操作,实际上是对于上传的图片进行处理,通过 JS 将图片进行压缩,最终实现 web 应用中图片大小的限制。 接下来,我们将分别从以下三个方面对此进行详细讲解: 图片选择与压缩 解决压缩后图片失去原有宽高比例的问题 示例说明 1. 图片选择与压缩 我们可以通过 elementU…

    Vue 2023年5月28日
    00
  • vue实现登录时图形验证码

    下面是Vue实现登录时图形验证码的完整攻略。 1. 简介 在网站的登录界面中,为了增加用户的安全性,通常会使用图形验证码来防止机器恶意登录或者验证码破解等安全问题。Vue作为现代前端框架,可以很方便地实现图形验证码。 2. 实现步骤 2.1 安装v-charts插件 在Vue项目中使用图形验证码需要使用v-charts插件,因此需要先安装v-charts插件…

    Vue 2023年5月29日
    00
  • Vue3和Vite不得不说的那些事

    下面是关于“Vue3和Vite不得不说的那些事”的完整攻略。 什么是Vue3和Vite Vue3是Vue.js在2020年9月正式发布的一次重大版本更新,Vue3相较于Vue2来说,带来许多令人激动的新特性,包括Composition API、性能优化等。其中,Composition API是最大的亮点之一,它能够让开发者更好地组织和重用组件逻辑。 Vite…

    Vue 2023年5月28日
    00
  • Vue如何下载本地静态资源static文件夹

    当我们使用Vue.js开发项目时,我们常常需要在页面上引入一些本地的静态资源,如图片、字体等等。Vue提供了一个非常简单的方法来加载这些静态资源,那就是使用静态资源文件夹(static folder)。 下面是如何下载并使用Vue的静态资源文件夹的完整攻略(包含两条示例说明): 1. 创建静态资源文件夹 首先,在Vue项目的根目录下创建一个名为“static…

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