import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class JDBCUtil { public static Connection getCon() { Connection connection = null; try { // 1.加载JDBC驱动程序,jdk1.5后可以不写 Class.forName("com.mysql.cj.jdbc.Driver"); //2.建立与数据库的连接 String url = "jdbc:mysql://localhost:3306/student? useSSL=false&serverTimezone=Asia/Shanghai ";//数据库URL String name = "root"; //数据库登录账号 String password = "123456"; //数据库登录密码 connection = DriverManager.getConnection(url, name, password); } catch (SQLException | ClassNotFoundException e) { e.printStackTrace(); } return connection; } public static void main(String[] args) { JDBCUtil.getCon(); } }
时间: 2024-02-14 09:32:59 浏览: 14
这是一个Java的JDBC工具类,其中包含一个静态方法`getCon()`,返回一个与MySQL数据库建立连接的`Connection`对象。在`main`方法中调用该方法可以测试是否能成功连接数据库。具体来说,该工具类使用了MySQL的JDBC驱动程序进行连接。其中,`url`表示数据库的URL地址,`name`表示登录账号,`password`表示登录密码。在建立连接之前,需要先加载JDBC驱动程序,这里使用了`Class.forName()`方法。如果连接出现异常,会打印出异常信息并返回`null`。
相关问题
import java.sql.Connection
import java.sql.Connection 是 Java 语言中的一个类库,用于建立和管理与数据库的连接。它是 Java.sql 包中的一部分,可用于执行 SQL 语句并处理查询结果。在使用它之前,您需要先加载数据库驱动程序并使用驱动程序管理器注册。然后,您可以使用 DriverManager 类的 getConnection() 方法创建一个连接对象,该对象表示与数据库的连接。创建连接对象后,您可以使用它来执行 SQL 查询,并将查询结果返回给您的 Java 应用程序。
Failed to obtain JDBC Connection; nested exception is java.sql.SQLException
引用[1]中提到的错误信息"Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: Access denied for user ‘root’@‘localhost’ (using password: YES)"表示在执行查询时无法获取JDBC连接,原因是使用的用户名和密码不正确或者没有权限访问数据库。
解决这个问题的方法是:
1. 确保使用的用户名和密码是正确的,可以尝试重新输入正确的用户名和密码。
2. 检查数据库的权限设置,确保用户具有访问数据库的权限。可以通过授予用户正确的权限来解决这个问题。
3. 检查数据库服务器是否正在运行,并且可以通过网络连接。如果数据库服务器没有运行或者无法通过网络连接,那么也会导致无法获取JDBC连接的错误。
以下是一个示例代码,演示了如何使用Java代码连接数据库并执行查询:
```java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JdbcExample {
public static void main(String[] args) {
Connection connection = null;
Statement statement = null;
ResultSet resultSet = null;
try {
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 创建数据库连接
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase", "root", "password");
// 创建Statement对象
statement = connection.createStatement();
// 执行查询
resultSet = statement.executeQuery("SELECT * FROM mytable");
// 处理查询结果
while (resultSet.next()) {
// 处理每一行数据
String column1 = resultSet.getString("column1");
int column2 = resultSet.getInt("column2");
// ...
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 关闭资源
try {
if (resultSet != null) {
resultSet.close();
}
if (statement != null) {
statement.close();
}
if (connection != null) {
connection.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
```