Eclipse使用JDBC连接MySQL数据库详细教程

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: Eclipse使用JDBC连接MySQL数据库详细教程

Eclipse使用JDBC连接MySQL数据库详细教程

前言:遇到问题不要退缩,因每解决一个问题你就离目标更近一步

下载连接MySQL数据库的驱动

使用JDBC连接MySQL数据库的驱动为Connentor/J,需要下载什么版本可以参考下图。

20160906180301061.png

下载完成之后需要解压到本地。

在Eclipse中引用jar包

在新建的Java工程上点击右键,Build Path —>Add External Archives.. 添加解压缩到本地的jar包。

20160906181557863.png

JDBC连接数据库步骤

1.载入驱动

2.连接数据库

连接数据库的注意事项

我们解压到本地的文件里面有官方关于使用JDBC连接数据库的文档,这里我们可以看一下官方的文档。下面是官方文档中的代码

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
// Notice, do not import com.mysql.cj.jdbc.*
// or you will have problems!
public class LoadDriver {
public static void main(String[] args) {
try {
// The newInstance() call is a work around for some
// broken Java implementations
Class.forName("com.mysql.cj.jdbc.Driver").newInstance();
} catch (Exception ex) {
// handle the error
        }
    }
}

这里的Class.forName("com.mysql.cj.jdbc.Driver").newInstance();

是用于注册驱动,也就是JDBC连接数据库步骤 中的第一步。我们在Eclipse中运行正常,没有什么问题。下面是第二步连接数据库,我们这里也用官方文档中提供给我们的代码。代码如下

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
Connection conn = null;
...
try {
conn =
DriverManager.getConnection("jdbc:mysql://localhost/test?" +
"user=minty&password=greatsqldb");
// Do something with the Connection
...
} catch (SQLException ex) {
// handle any errors
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode());
}

现在我们来看一下这段代码,其中也就一句

DriverManager.getConnection("jdbc:mysql://localhost/test?" +
"user=minty&password=greatsqldb");

这段代码是用于连接到数据库的,上面的test是我们自己的数据库,user=minty 是我们安装数据库使用的用户名,password=greatsqldb 是我们自己的数据库密码,现在我们把第一步与第二步一起在Eclipse中运行一下,代码如下

/**
 * URL是用于连接数据库的标识符
 * USER_NAME 是安装MySQL时使用的用户名
 * PASSWORD 是与用户名相对应的密码
 */
public class Jdbc {
    //mydb是我自己建的数据库
    //user=root 我自己数据库的用户名
    //password=wizardfu 我自己的数据库的密码
    public static final String URL = "jdbc:mysql://localhost/mydb?" +
            "user=root&password=wizardfu";
    public static void main(String[] args) {
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            DriverManager.getConnection(URL);
            System.out.println("成功加载MYSQL驱动");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

这里我们看一下运行结果

20160906184340109.png

发现有警告,查了一下资料说是时区的问题,只要把上面的URl修改一下就好了,看一下修改后的URL

public static final String URL = "jdbc:mysql://localhost/mydb?serverTimezone=UTC"+"user=root&password=wizardfu";

我们再在Eclipse中运行一下,又发现出现了下面的警告

20160906185655721.png

这里我把没有显示出来的警告粘贴出来,如下

Tue Sep 06 18:53:24 CST 2016 WARN: Establishing SSL connection without server’s identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn’t set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to ‘false’. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.

我们在上面的警告中发现一段话

You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification

这里说需要设置 useSSL=false or set useSSL=true

我们再次改变URL的代码,改变后的代码如下

public static final String URL = "jdbc:mysql://localhost/mydb?serverTimezone=UTC&useSSL=false&user=root&password=wizardfu";

再次运行一下,结果如下

20160906190540467.png

好了,到此已经通过JDBC成功连接到MySQL数据库。连接的时候确实遇到不少麻烦,写下这篇文章希望大家少踩坑。


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
18天前
|
安全 Java 数据库连接
gbase8a JDBC常用特性-Kerberos认证方式连接
JDBC常用特性-Kerberos认证方式连接
|
19天前
|
Java 数据库连接 网络安全
JDBC常用特性-SSH隧道连接
JDBC常用特性-SSH隧道连接
|
3天前
|
SQL Java 数据库连接
JDBC编程安装———通过代码操控数据库
本文,教你从0开始学习JBCD,包括驱动包的下载安装调试设置,以及java是如何通过JBDC实现对数据库的操作,以及代码的分析,超级详细
|
29天前
|
关系型数据库 MySQL 网络安全
DBeaver连接MySQL提示Access denied for user ‘‘@‘ip‘ (using password: YES)
“Access denied for user ''@'ip' (using password: YES)”错误通常与MySQL用户权限配置或网络设置有关。通过检查并正确配置用户名和密码、用户权限、MySQL配置文件及防火墙设置,可以有效解决此问题。希望本文能帮助您成功连接MySQL数据库。
45 4
|
1月前
|
安全 关系型数据库 MySQL
【赵渝强老师】MySQL的连接方式
本文介绍了MySQL数据库服务器启动后的三种连接方式:本地连接、远程连接和安全连接。详细步骤包括使用root用户登录、修改密码、创建新用户、授权及配置SSL等。并附有视频讲解,帮助读者更好地理解和操作。
183 1
|
2月前
|
SQL Java 关系型数据库
java连接mysql查询数据(基础版,无框架)
【10月更文挑战第12天】该示例展示了如何使用Java通过JDBC连接MySQL数据库并查询数据。首先在项目中引入`mysql-connector-java`依赖,然后通过`JdbcUtil`类中的`main`方法实现数据库连接、执行SQL查询及结果处理,最后关闭相关资源。
200 6
|
2月前
|
SQL JavaScript 关系型数据库
node博客小项目:接口开发、连接mysql数据库
【10月更文挑战第14天】node博客小项目:接口开发、连接mysql数据库
|
7月前
|
Java Maven Android开发
在Eclipse里配置Maven插件
Maven是一款比较常用的Java开发拓展包,它相当于一个全自动jar包管理器,会导入用户开发时需要使用的相应jar包。使用Maven开发Java程序,可以极大提升开发者的开发效率。下面我就跟大家介绍一下如何在Eclipse里安装和配置Maven插件。
175 0
|
7月前
|
XML Java Maven
eclipse 、idea 安装activiti插件
eclipse 、idea 安装activiti插件
193 0
|
Java Android开发
eclipse安装SpringBoot插件的无敌办法
eclipse安装SpringBoot插件的无敌办法
156 0

推荐镜像

更多