将 Java 应用程序从 PC 连接到另一台 PC 上的 XAMPP 服务器

Posted

技术标签:

【中文标题】将 Java 应用程序从 PC 连接到另一台 PC 上的 XAMPP 服务器【英文标题】:Connecting Java app from a PC to XAMPP server on another PC 【发布时间】:2019-08-19 07:20:11 【问题描述】:

我正在开发一个个人项目,其中包括一个连接到 XAMPP SQL 数据库的 Java 应用程序。该应用程序在托管数据库的同一台 PC 上完美地连接到数据库。该程序使用单例类。

代码:

private Connector() 
    String host = "jdbc:mysql://localhost/my_database";
    String user = "root";
    String pass = "";

    try 
        connection = DriverManager.getConnection(host, user, pass);
        System.out.println("Connection success!");
     catch (SQLException ex) 
        System.out.println("Connection failed!");
    

我想更进一步,能够将应用程序放在我的笔记本电脑上并连接到我电脑上的数据库。我进入 XAMPP 并更改了“httpd-xampp.conf”文件,以便它允许本地连接,当我使用笔记本电脑时,我尝试从浏览器打开 phpMyAdmin,它成功了!

现在我将应用程序放在我的笔记本电脑上,但主机不是:

String host = "jdbc:mysql://localhost/my_database";

我找到了我的 PC 的本地 IP,并在我的笔记本电脑上将主机更改为:

String host = "jdbc:mysql://192.168.1.8/my_database";

连接失败,所以我尝试设置一个允许任何主机连接并具有完全访问权限的不同用户,以防万一。仍然会发生同样的错误。

我检查了我的防火墙,但没有禁用连接的条目,但无论如何我能够通过我的笔记本电脑通过浏览器连接到 phpMyAdmin。

这是我在 Xampp 配置文件中更改的部分:

<Directory "N:/xampp/phpMyAdmin">
        AllowOverride AuthConfig
        Require all granted
        ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>

【问题讨论】:

【参考方案1】:

您可以尝试端口转发 PC 上的应用程序/端口,以确保它不是防火墙,除此之外,我看不出什么会阻止连接。

Here 是 Windows 端口转发的链接,如果您需要的话。

希望对你有帮助

【讨论】:

我认为我的路由器不支持端口转发,但我会尝试一下并回复您

以上是关于将 Java 应用程序从 PC 连接到另一台 PC 上的 XAMPP 服务器的主要内容,如果未能解决你的问题,请参考以下文章

无法在java中的2台PC套接字之间将客户端连接到服务器

如何将 VB.net 程序连接到 access 数据库并在 2 台不同的 PC 上运行它。

禁用“允许远程连接到此服务器”后,我仍然可以从另一台机器连接

我的 ionic 应用程序无法连接到手机上运行的 MYSQL 数据库,但在具有 localhost 的 PC 上它将运行

NodeJS - 如何连接到运行 Node 应用程序的远程 PC?

无法连接到 NATed 对等体