java - 如何使用 Java 中的聊天应用程序连接网络上的 2 台不同计算机?

标签 java

我有一对简单的客户端和服务器程序。客户端连接到服务器,当连接成功时,服务器会回复一条“Hello there”消息。如果我想让客户端程序和服务器程序运行在不同的系统上,我应该如何修改程序?

这是客户端的代码..

package practice;

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

public class DailyAdviceClient
{
    public static void main(String args[])
    {
        DailyAdviceClient dac = new DailyAdviceClient();
        dac.go();
    }

    public void go()
    {
        try
        {
            Socket incoming = new Socket("127.0.0.1",4242);
            InputStreamReader stream = new InputStreamReader(incoming.getInputStream());
            BufferedReader reader = new BufferedReader(stream);
            String advice = reader.readLine();
            reader.close();
            System.out.println("Today's advice is "+advice);
        }
        catch(Exception e)
        {
            System.out.println("Client Side Error");
        }
    }
}

这是服务器的代码

package practice;

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

public class DailyAdviceServer
{
    public static void main(String args[])
    {
        DailyAdviceServer das = new DailyAdviceServer();
        das.go();
    }

    public void go()
    {
        try
        {
            ServerSocket serversock = new ServerSocket(4242);

            while(true)
            {
                Socket outgoing = serversock.accept();
                PrintWriter writer = new PrintWriter(outgoing.getOutputStream());
                writer.println("Hello there");
                writer.close();

            }
        }
        catch(Exception e)
        {
            System.out.println("Server Side Problem");
        }
    }
}

最佳答案

只需将客户端上的“127.0.0.1”更改为服务器的 IP,并确保端口 4242 已打开。

关于java - 如何使用 Java 中的聊天应用程序连接网络上的 2 台不同计算机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24389491/

相关文章:

java - 我试图返回一个数组,其中包含数组中所有子列表的总数

java - 如何在 jsf 中禁用应用程序的特定部分?

当应用程序用作库时,Java 访问资源文件时出现问题

java - REST API 中查询参数可以是强制的吗

java - 读取、写入 map 到可编辑文本文件 - java、eclipse、android

java - 注释中的代码导致编译失败 - 为什么?

java - 递归方法适用于带有控制台的java,但不适用于android

java - ListView 在解析 json 时没有相应地显示数据

java - pyspark:从 pyspark 调用自定义 java 函数。我需要 Java_Gateway 吗?

java - 将 RSA 公钥写入文本文件