java - 如何解决此 Java Jdbc 连接错误?
问题描述
我编写了一个简单的 Java Jdbc 连接程序。我已经放了 MySQL 连接器 jar。我还将类路径放在环境变量中。仍然无法解决此连接错误。
这是我的代码:
public class check {
public static void main(String[] args) {
System.out.println("-------- MySQL JDBC Connection Demo ------------");
try
{
Class.forName("com.mysql.cj.jdbc.Driver");
}
catch (ClassNotFoundException e) {
System.out.println("MySQL JDBC Driver not found !!");
return;
}
System.out.println("MySQL JDBC Driver Registered!");
Connection connection = null;
try {
connection = DriverManager
.getConnection("jdbc:mysql://localhost:3306/company","root","");
System.out.println("SQL Connection to database established!");
} catch (SQLException e) {
System.out.println("Connection Failed! Check output console");
return;
} finally {
try
{
if(connection != null)
connection.close();
System.out.println("Connection closed !!");
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
输出:
-------- MySQL JDBC Connection Demo ----------
MySQL JDBC Driver Registered!
Connection Failed! Check output console
Connection closed !!
解决方案
替换以下行
} catch (SQLException e) {
System.out.println("Connection Failed! Check output console");
return;
}
和
} catch (SQLException e) {
System.out.println("Connection Failed! Check output console");
e.printStackTrace();
}
这样您就可以找到问题的根本原因。你当前的代码只是在吃那些重要的信息。
在旁注中,删除以下残留代码:
try
{
Class.forName("com.mysql.cj.jdbc.Driver");
}
catch (ClassNotFoundException e) {
System.out.println("MySQL JDBC Driver not found !!");
return;
}
Class.forName("com.mysql.cj.jdbc.Driver")
从 JDBC 4.0 开始不需要。
推荐阅读
- c# - 从 vue 引导按钮调用方法会停止页面渲染
- reactjs - Not able to handle change/click on inner elements (displyed using onRenderField) of ChoiceGroup in office-ui-fabric-react
- java - 我们可以仅在加载彼此之后添加一个 Maven 依赖项吗?
- bash - 有没有办法在这种情况下只需要一个回声?
- reactjs - 反应 js + laravel 部署
- css - 对角线 SVG 行程
- c++ - CublasLt cublasLtMatmulAlgoGetHeuristic 为行主矩阵返回 CUBLAS_STATUS_INVALID_VALUE
- python - Pony orm 连接池
- javascript - 在 JS 中将 webm 容器更改为 mp4 视频客户端的任何等效于“-c:v copy”的方法?
- azure - Get-AzureRmStorageAccount,挖掘容器文件并获取“修改”属性