1

我正在开发一个希望在 Internet 上可用的 Java 应用程序。然而,一些要求让我陷入了困境。这就是为什么我会感谢有经验的程序员的一些投入。情况如下:

我有一个基本的虚拟主机,有

  • 一个mysql数据库
  • 一个开放的 ftp 端口 (21)
  • 一个开放的 http 端口 (80)

但没有

  • 一个开放的 mysql 端口 (3306)
  • 一个开放的 ssh 端口 (22)

现在,我想构建一个可以执行以下操作的应用程序(Java Web Start 或 Java Applet):

  • 可通过 Internet 供多个用户使用
  • 与mysql数据库通信
  • 在本地文件系统和虚拟主机之间交换文档

现在你看到了问题:

  • 运行 Java Web Start 应用程序时,似乎无法连接到 mysql-database,因为 mysql-port 已关闭。
  • 运行 Java Applet 时,我似乎无法访问本地文件系统中的文件。

有人对这个问题提出建议吗?

提前致谢!

汤姆

4

2 回答 2

4

我不会推荐这样的场景。

使用 applet 和 web start,您将向用户公开数据库用户名和密码。你可以混淆它们,但它们仍然可以被逆向工程。

相反,您应该创建一个适当的 RESTful Web 服务来调解从数据库到客户端的连接。

于 2011-10-12T12:28:45.333 回答
2

当 Webstart 和 Applets 无法连接到数据库时,它们都无法与数据库通信。事实上,如果可以的话,那将是非常糟糕的,因为那样应用程序将必须包含数据库密码,每个有权访问该应用程序的人都可以提取它并对您的数据库造成严重破坏。这可能是主机不打开该端口到互联网的原因。

要使用数据库,您必须在虚拟主机上运行某种中间 Web 服务层。

于 2011-10-12T12:29:58.437 回答