Mysql8.0使用JDBC无法顺利建立连接问题

Mysql8.0使用JDBC无法顺利建立连接问题

一开始的建立连接的代码为:

conn=(Connection)DriverManager.getConnection("jdbc:mysql://localhost:3306/test?useSSL=flase","root","xb199795");

控制台什么也没有输出,我也是debug完才发现问题在建立连接这一行

所以我就在这一行加上了tyr-catch语句捕获异常


大概的意思就是要加上时区,然后改正后的代码如下:

conn=(Connection)DriverManager.getConnection("jdbc:mysql://localhost:3306/test?useSSL=FALSE&serverTimezone=UTC","root","xb199795");

整个代码如下:

package jdbc;


public class JDBCTest {
	public static void main(String[] args) {
		String sql="select * from tbl_user";
		Connection conn=null;
		Statement st=null;
		ResultSet rs=null;
		try {
			Class.forName("com.mysql.cj.jdbc.Driver").newInstance();
			try {
			conn=(Connection)DriverManager.getConnection("jdbc:mysql://localhost:3306/test?useSSL=FALSE&serverTimezone=UTC","root","xb199795");
			}catch(Exception e) {
				e.printStackTrace();
			}
			st=(Statement)conn.createStatement();
			rs=st.executeQuery(sql);
			while(rs.next()) {
				System.out.print(rs.getInt("id")+" ");
				System.out.print(rs.getString("name")+" ");
				System.out.print(rs.getString("password")+" ");
				System.out.println(rs.getString("email")+" ");
			}
		} catch (Exception e) {
			// TODO: handle exception
		}
	}
}

MySQL 8.0 使用 JDBC (Java Database Connectivity) 连接数据库是一种常见的方法,因为Java平台广泛支持JDBC,它提供了一种标准的方式来与各种数据库交互。以下是使用 JDBC 连接MySQL 8.0 的基本步骤: 1. **添加JDBC驱动**: 首先需要下载 MySQLJDBC 驱动 JAR 文件,通常称为 `mysql-connector-java`. 加入到项目类路径(如 Maven 仓库或直接放入 `lib` 目录)。 2. **创建Connection对象**: 在 Java 代码中,通过 `Class.forName("com.mysql.cj.jdbc.Driver")` 来加载驱动,并使用 `DriverManager.getConnection()` 函数建立到数据库的连接,例如: ```java String url = "jdbc:mysql://localhost:3306/mydatabase"; String username = "username"; String password = "password"; Connection conn = DriverManager.getConnection(url, username, password); ``` 3. **执行SQL查询**: 创建 Statement、PreparedStatement 或 PreparedStatementBuilder 对象,然后执行 SQL 语句: - `Statement`: `Statement stmt = conn.createStatement();` - `PreparedStatement`: `PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM table WHERE id=?"); pstmt.setInt(1, id); ResultSet rs = pstmt.executeQuery();` - `PreparedStatementBuilder`: `String sql = "INSERT INTO table SET column1=?, column2=?"; PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setString(1, value1); pstmt.setString(2, value2); pstmt.executeUpdate();` 4. **处理结果集**: 当使用 `ResultSet` 查询数据时,可以遍历结果并获取相应的字段值。 5. **关闭资源**: 最后别忘了关闭 Connection、Statement 和 ResultSet 等资源,释放数据库连接: ```java rs.close(); pstmt.close(); stmt.close(); conn.close(); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值