1

I'm currently using a hosting service that offers users access to MySQL databases, but does not offer a Tomcat server or any other way to perform server side processing. So a three tier design is out.

Being a novice in Java and Javascript I was planning on using them on this project to gain more experience. I know nothing about PHP, which I've heard may be the solution to my problem. Does anyone know a way to use Java/Javascript to gain access to a MySQL database from the browser client?

Thanks, Mark

4

5 回答 5

1

Java 可以通过 TCP 访问 MySQL ... JavaScript 的浏览器 API 不允许 TCP,因此 JavaScript 不是一个选项,除了服务器端 JavaScript ...如果您真的想要直接连接,Java 可能是您的选择...您可以创建一个 Java 小程序,它将连接到远程 MySQL 守护程序,使用...但是您可能必须对其进行签名,以防默认沙箱不允许这种通信...

或者,理论上你可以使用 FlashPlayer 9+,但你必须在 ActionScript 3 或 Haxe 中实现整个协议,所以我猜这不是一个选择......

但是,您不想要的 3 层设计确实是最好的选择,原因如下:

  • 灵活性:如果您在客户端和数据库之间引入一个额外的层,这将为您以后的修改提供更多的权力并解耦客户端和数据库......
  • 控制:控制/限制对数据库的访问要容易得多
  • 安全性:通常,您会配置 MySQL 数据库,使其只接受来自极少数主机的连接,通常只接受本地主机,也可能是一台外部服务器……这样,您的数据库的安全性实际上就是外部服务器,因为可能没有其他人甚至知道数据库......我不会说保护服务器很容易......但它比如果你有许多公共帐户更安全,可以从任何主机访问数据库,超过不安全的连接...
于 2009-09-14T19:08:16.720 回答
1

Javascript runs in a sandbox, and can not do things like opening files, connecting to a MySQL database and so on. Despite the similar name, Java and Javascript have nothing in common.

PHP and Java are both server side systems, and they are both able to connect to MySQL databases.

于 2009-09-14T18:05:34.117 回答
1

PHP 确实是服务器端的,但是许多不提供 JSP、ASP 等的 ISP 仍然提供 PHP。所以这实际上可能对你有用。我想简短的回答是:准确找出可用的工具。如果您的 ISP 没有提供任何满足您需求的东西,请寻找另一个 ISP。我在一个向我收费的 ISP 上运行多个 JSP/servlet 站点,我认为每月收费 8 美元。

于 2009-09-14T18:29:45.477 回答
0

您的 MySQL 安装应该有一个与之关联的主机名和端口。您可以通过不同的程序连接到该主机/端口(在其他地方运行,因为您提到它在此处不可用)。您可能可以在允许您这样做的地方编写脚本并通过网络连接访问数据库。

于 2009-09-14T18:12:16.323 回答
0

因此,您的托管公司提供了 MySQL 数据库,但没有运行时以编程方式访问/修改它?!那是毫无价值的边缘。你确定你知道你在说什么吗?

于 2009-09-14T19:29:56.367 回答