java连接mysql8.0问题

本文介绍了在Java中连接MySQL 8.0时遇到的问题,包括使用新版本的JDBC驱动和调整URL以适应时区设置。通过提供具体的连接代码示例,演示了解决连接问题的方法,并提醒读者注意与旧版本 JDBC 的差异。
摘要由CSDN通过智能技术生成
---
title: java连接mysql8.0问题
date: 2018-07-08 19:27:38
updated:
tags:
description:
keywords:
comments:
image:
---
才解决完mysql8.0远程访问的问题,今天测试java连接又出问题了,虽然使用了8.0的jdbc但是死活连接不上,一度以为是加密方式的问题,后来才发现使用以前的连接方式确实不行了.
<!--more-->


# jdbc #
首先附上jdbc 的jar文件下载地址:https://dev.mysql.com/downloads/file/?id=477057


下载后将jdbc building path


# 连接代码 #
附上连接测试代码
```java
package mysqltest;








import java.sql.Connection;
import java.sql.DriverManager;




/**
 * 数据库工具类
 * @author Administrator
 *
 */
public class DbUtil {


private String dbUrl="jdbc:mysql://localhost:3306/db_msdz?useSSL=FALSE&serverTimezone=UTC"; // 数据库连接地址
private String dbUserName="root"; // 用户名
private String dbPassword="997997"; // 密码
private String jdbcName="com.mysql.cj.jdbc.Driver"; // 驱动名称


/**
* 获取数据库连接
* @return
* @throws Exception
*/
public Connection getCon()throws Exception{
Class.forName(jdbcName);
Connection con=DriverManager.getConnection(dbUrl, dbUserName, dbPassword);
return con;
}

/**
* 关闭数据库连接
* @param con
* @throws Exception
*/
public void closeCon(Connection con)throws Exception{
if(con!=null){
con.close();
}
}

public static void main(String[] args) {
DbUtil dbUtil=new DbUtil();
try {
dbUtil.getCon();
System.out.println("数据库连接成功!");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("数据库连接失败");
}
}
}




```
**请自行修改测试**


# 与jdbc5.0的差异 #
mysql8.0需要使用8.0的jdbc 且url和驱动名称都有改变,具体为
` private String jdbcName="com.mysql.jdbc.Driver"; `变为` private String jdbcName="com.mysql.cj.jdbc.Driver"; `


` private String dbUrl="jdbc:mysql://localhost:3306/db_msdz"; `变为` private String dbUrl="jdbc:mysql://localhost:3306/db_msdz?useSSL=FALSE&serverTimezone=UTC"; `这个链接添加了时区


# 后记 #
如果还不明白可以参考csdn的博主:[Eclipse连接MySQL数据库 — 8.0版jdbc驱动](https://blog.csdn.net/yangdan1025/article/details/80591012),有操作动图方便小白理解
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值