当前位置: 首页 > 面试题库 >

如何创建基本的Java Server?

蒲坚
2023-03-14
问题内容

本质上,我想要一个可以连接多个人的基本Java Server,并且当一个连接的客户端(已经在Obj-
c中进行了编码)向其发送数据时,它会将其发送回所有连接的人。

我是一名真正的Java新手,在可预见的将来,我将不再需要Java来做任何事情,因此我希望尽快解决,而不是从头开始学习Java。因此,如果任何人都有一些源代码或教程,那么将不胜感激。

谢谢:) Ozzie


问题答案:

这是Sun提供的一个简单的“ Knock Knock”服务器:

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

public class KnockKnockServer {
    public static void main(String[] args) throws IOException {

        ServerSocket serverSocket = null;
        try {
            serverSocket = new ServerSocket(4444);
        } catch (IOException e) {
            System.err.println("Could not listen on port: 4444.");
            System.exit(1);
        }

        Socket clientSocket = null;
        try {
            clientSocket = serverSocket.accept();
        } catch (IOException e) {
            System.err.println("Accept failed.");
            System.exit(1);
        }

        PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
        BufferedReader in = new BufferedReader(
                new InputStreamReader(
                clientSocket.getInputStream()));
        String inputLine, outputLine;
        KnockKnockProtocol kkp = new KnockKnockProtocol();

        outputLine = kkp.processInput(null);
        out.println(outputLine);

        while ((inputLine = in.readLine()) != null) {
             outputLine = kkp.processInput(inputLine);
             out.println(outputLine);
             if (outputLine.equals("Bye."))
                break;
        }
        out.close();
        in.close();
        clientSocket.close();
        serverSocket.close();
    }
}

您再简单不过了。



 类似资料:
  • 如何为我的所有页面创建基本模板? 我试着在所有可用的页面上做一个RadSideDrawer。(除了一些特定的页面,如登录/注册等)。 目前,我在所有页面上复制并通过我的菜单。正确的处理方式是什么?

  • 我正在尝试更改API文档的基本访问url。url是“http://localhost:8080/swagger-ui.html”。我想获得类似“http://localhost:8080/myapi/swagger-ui.html”的内容。 我使用Springfox 2.8.0 Swagger、Java 8、Spring Boot 2.0的Swagger配置是: 自定义路径提供程序必须提供帮助,但

  • 问题内容: 我有一个包含CREATE TABLE命令的sql / ddl脚本。 我使用hibernate模式,并且希望hibernate模式执行此脚本以创建数据库结构。 这个怎么做? 问题答案: 如果使用Spring,则可以使用其JDBC实用程序填充数据库:

  • 我目前正在完成一个更大的项目,最后一部分是在多色线的情节中添加一个简单的传说。该行只包含两种不同的颜色。 该图显示了地球和火星之间的距离随时间的变化。从3月到8月,这条线是橙色的,其他月份是蓝色的。图例应位于绘图右上角的一个简单框中,显示所用颜色的标签。像这样的东西会很好。 绘图数据来自一个巨大的矩阵,我称之为。在显示该问题涉及的绘图之前,它包含了一些任务所需的更多信息。对于我正在努力绘制的图来说

  • 问题描述 (Problem Description) 如何创建一个基本的Applet? 解决方案 (Solution) 以下示例演示如何通过扩展Applet类来创建基本Applet。 您需要嵌入另一个HTML代码才能运行此程序。 import java.applet.*; import java.awt.*; public class Main extends Applet { public

  • 本文向大家介绍如何基于R中的data.table的组列创建随机样本?,包括了如何基于R中的data.table的组列创建随机样本?的使用技巧和注意事项,需要的朋友参考一下 随机抽样有助于我们减少分析中的偏差。如果我们有分组数据,那么我们可能想根据分组找到随机样本。例如,如果我们有一个带有组变量的数据框,并且每个组包含十个值,那么我们可能想要创建一个随机样本,在该样本中,将从每个组中随机选择两个值。