谢谢你给我重要的时间。
我正在尝试使用WampServer 2.4在应用程序和数据库之间建立连接我的配置文件包含与默认MySQL特权帐户相对应的设置(没有密码的根)。我的MySQL服务器是用这个默认值运行的,
我正在使用此代码建立连接。
import java.lang.ClassNotFoundException;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.DriverManager;
import java.sql.SQLException;
public class implementation {
public static void main(String[]arg)
{
Connection connection = null;
Statement statement = null;
try
{
System.out.println("conneting to Database...");
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection("jdbc:mysql://localhost:80/db","root","");
System.out.println("Connection Successful");
}
catch(ClassNotFoundException error)
{
System.out.println("Error:" + error.getMessage());
}
catch(SQLException error)
{
System.out.println("Error:" + error.getMessage());
}
finally
{
if (connection != null)
try {
connection.close();
}
catch(SQLException ignore)
{
}
if (statement != null)
try {
statement.close();
}
catch(SQLException ignore)
{
}
}
}
}
当我运行此代码时,它不会将我连接到数据库。所以我试图获得正确的端口,我签入phpinfo()并找到了这个主机名:port | localhost:0
所以我把单行代码改成了这个,
connection = DriverManager.getConnection("jdbc:mysql://localhost:0/db","root","");
当我运行这条新线路时,得到这个错误。
正在连接到数据库。。。
错误:通信链路故障
上次发送到服务器的数据包是0毫秒前。
请给我你的指导来解决这个问题。
谢谢您
最佳答案
这可能是您的错误:
connection = DriverManager.getConnection("jdbc:mysql://localhost:80/db","root","");
您在这个命令上使用的端口80是Apache监听的端口。MySQL默认监听端口3306。
如果您没有改变,那么您可能根本不需要在这个cmmand上放置:xxx端口number。
所以试试看
connection = DriverManager.getConnection("jdbc:mysql://localhost/db","root","");
看看这对你是否有用
否则就试试
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/db","root","");
关于mysql - wampserver 2.4的JDBC连接问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19064862/