如何修复 JDBC 中的 SQLNonTransientConnectionException
How to fix SQLNonTransientConnectionException in JDBC
我正在尝试通过 Wamp 将我的 java 程序连接到 MySql 数据库,但我得到的只是过多的 SQL 异常。
我几乎尝试了 Whosebug 上的所有问题或查询或答案,但 none 的答案解决了我的问题....
也许我的问题会被标记为重复,但我不知道为什么其他答案中提到的解决方案对我不起作用,尽管得到了数百个赞成票。
这是我的代码
import java.sql.*;
public class SQLTest{
private static Connection connect = null;
public static void main(String[] args) {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
System.out.println("Trying to Establish Database Connection.....");
//connect = DriverManager.getConnection("jdbc:mysql://localhost:8080/sys?user=root&password=root&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true");
connect = DriverManager.getConnection("jdbc:mysql://localhost:8080/sys", "root", "root");
System.out.println("Connection Established.");
} catch (SQLException se) {
System.out.println("connection problem");
se.printStackTrace();
} catch (Exception e){
System.out.println("Some Other Problem.");
e.printStackTrace();
}
}
}
这是我在return
中得到的
The default port in httpd.conf file was set to 8080. I dont know somehow 3306 works.
WAMP 堆栈由四个组件组成:Windows、Apache、MySQL 和 PHP。
Apache 是接收 HTTP 请求和 returns 网页的服务器软件。 httpd.conf
是它的配置文件。 Apache 的默认端口是 80,但 WAMP 堆栈通常使用不同的端口,如 8080 用于开发目的。
MySQL 是接收 SQL 查询和 returns 来自这些查询的结果的组件。它侦听与 Apache 不同的端口。 MySQL 的配置文件是 my.ini
。 MySQL 的默认端口是 3306。
我正在尝试通过 Wamp 将我的 java 程序连接到 MySql 数据库,但我得到的只是过多的 SQL 异常。
我几乎尝试了 Whosebug 上的所有问题或查询或答案,但 none 的答案解决了我的问题....
也许我的问题会被标记为重复,但我不知道为什么其他答案中提到的解决方案对我不起作用,尽管得到了数百个赞成票。
这是我的代码
import java.sql.*;
public class SQLTest{
private static Connection connect = null;
public static void main(String[] args) {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
System.out.println("Trying to Establish Database Connection.....");
//connect = DriverManager.getConnection("jdbc:mysql://localhost:8080/sys?user=root&password=root&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true");
connect = DriverManager.getConnection("jdbc:mysql://localhost:8080/sys", "root", "root");
System.out.println("Connection Established.");
} catch (SQLException se) {
System.out.println("connection problem");
se.printStackTrace();
} catch (Exception e){
System.out.println("Some Other Problem.");
e.printStackTrace();
}
}
}
这是我在return
中得到的The default port in httpd.conf file was set to 8080. I dont know somehow 3306 works.
WAMP 堆栈由四个组件组成:Windows、Apache、MySQL 和 PHP。
Apache 是接收 HTTP 请求和 returns 网页的服务器软件。 httpd.conf
是它的配置文件。 Apache 的默认端口是 80,但 WAMP 堆栈通常使用不同的端口,如 8080 用于开发目的。
MySQL 是接收 SQL 查询和 returns 来自这些查询的结果的组件。它侦听与 Apache 不同的端口。 MySQL 的配置文件是 my.ini
。 MySQL 的默认端口是 3306。