通过JDBC连接MySql 8.0 应该注意的几个问题

在使用JDBC连接MySQL 8.0时,需要注意驱动问题,确保使用对应版本的驱动,并将其添加到环境。对于Eclipse或MyEclipse,需通过项目引入。代码中设置驱动时,使用'com.mysql.cj.jdbc.Driver'而非'com.mysql.jdbc.Driver'。在调用getConnection()方法时,url参数需设置useSSL为false,serverTimezone为UTC。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.驱动问题:
    应该使用对应的Mysql8.0的驱动,即下图中的这个jar包,将它添加到环境变量中的CLASSPATH中,我的电脑上这个jar包在C:\Program Files (x86)\MySQL\Connector J 8.0中,但是对于eclipse或者myeclipse玩家来说这样是无法生效的,因为它们都不使用CLASSPATH,所以需要你进行第三方包导入。

注意:在eclipse中使用JDBC连接数据库采用以下方式:
https://www.cnblogs.com/null-0/p/9426045.html


2.代码中设置驱动

使用"com.mysql.cj.jdbc.Driver"而不是"com.mysql.jdbc.Driver"

3.使用DriverManager的getConnection()方法时,其中的url参数,要将useSSL设置为false,并且将serverTimezone设置为UTC

Connection conn = DriverManager.getConnection(
				"jdbc:mysql://127.0.0.1:3306/select_test?useSSL=false&serverTimezone=UTC"
				, "root" , "wdtk3366999.");

下面是代码,表结构,工程目录,运行截图

package jdbc;
import java.sql.*;

public class ConnMysql
{
	public static void main(String[] args) throws Exception
	{
		// 1.加载驱动,使用反射的知识,现在记住这么写。
		Class.forName("com.mysql.cj.jdbc.Driver");
		try(
			// 2.使用DriverManager获取数据库连接,
			// 其中返回的Connection就代表了Java程序和数据库的连接
			// 不同数据库的URL写法需要查驱动文档知道,用户名、密码由DBA分配
			Connection conn = DriverManager.getConnection(
				"jdbc:mysql://127.0.0.1:3306/select_test?useSSL=false&serverTimezone=UTC"
				, "root" , "123456");
			// 3.使用Connection来创建一个Statment对象
			Statement stmt = conn.createStatement();
			// 4.执行SQL语句
			/*
			Statement有三种执行sql语句的方法:
			1 execute 可执行任何SQL语句。- 返回一个boolean值,
			  如果执行后第一个结果是ResultSet,则返回true,否则返回false
			2 executeQuery 执行Select语句 - 返回查询到的结果集
			3 executeUpdate 用于执行DML语句。- 返回一个整数,
			  代表被SQL语句影响的记录条数
			*/
			ResultSet rs = stmt.executeQuery("select s.* , teacher_name"
				+ " from student_table s , teacher_table t"
				+ " where t.teacher_id = s.java_teacher"))
		{
			// ResultSet有系列的getXxx(列索引 | 列名),用于获取记录指针
			// 指向行、特定列的值,不断地使用next()将记录指针下移一行,
			// 如果移动之后记录指针依然指向有效行,则next()方法返回true。
			while(rs.next())
			{
				System.out.println(rs.getInt(1) + "\t"
					+ rs.getString(2) + "\t"
					+ rs.getString(3) + "\t"
					+ rs.getString(4));
			}
		}
	}
}

在这里插入图片描述
工程目录
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值