有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java JApplet通过Eclipse而不是web浏览器连接到本地主机Mysql

所以我写了一个JApplet,它可以连接到MySQL服务器并使用MySQL服务器做一些事情。 当我在Eclipse中测试它时,它工作得很好。我有IP地址,数据库名称,我正在使用的用户名(root)和密码硬编码到程序中。 如果我的IP地址是localhost,或127.0.0.1(相同,但是的),或192.168。x、 x(我电脑的本地地址)从Eclipse运行时,JApplet将连接到MySQL服务器,不会出现任何问题。另外,如果我打开另一个终端并以这种方式登录mysql,它也可以工作

但是,如果我使用Eclipse对项目进行jar,则在HTMLApplet标记中包含mysql驱动程序,并在同一台机器上通过web浏览器运行该驱动程序,但该驱动程序不起作用

以下是我正在使用的HTML标记:

<applet code="mysqlApp.MysqlInterface.class"
    archive="LoginDemo.jar, mysql-connector-java-5.1.18-bin.jar"
    height="150" width="450">
    Your browser does not support the <code>applet</code> tag.
</applet>

我在Firefox 10中试用过。*在路由器上转发端口3306,关闭软件防火墙的情况下。此外,MySQL服务器绑定到0.0.0.0(它接受所有接口上的连接尝试),并且启用TCP/IP(不使用跳过网络选项)。我得到一个消息对话框窗口,说无法建立sql连接(我将其编程为执行此操作),并且在Java控制台中出现以下异常:

SQLException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver  
has not received any packets from the server.
SQLState: 08S01
VendorError: 0

我还在最新版本的Windows7x64的Internet Explorer中试用了它,当我点击应该连接到服务器的按钮时,网页冻结了

没有任何内容输出到运行mysqld的控制台(我使用mysqld--console使用管理终端运行了它)

有人有什么想法吗?我已经寻找解决方案好几天了,但我发现似乎可行的每件事都有一两个小细节,使其不适用于我的问题

是的,我知道如果要在生产代码中使用,我不应该让小程序直接与数据库通信(主要的安全问题),但我正处于这样做的早期阶段,并且正在尝试为测试目的解决这个问题

谢谢


共 (1) 个答案