myeclipse jdbc连接mysql数据库_怎样把navicat连接到eclipse

myeclipse jdbc连接mysql数据库_怎样把navicat连接到eclipse解决Eclipse通过JDBC连接MySQL数据库遇到的问题。包括EstablishingSSLconnectionwithoutserver’sidentityverificationis…警告和Theservertimezonevalueisunrecognized警告

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

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

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

下载连接MySQL数据库的驱动

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

Connector/J版本相关知识

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

在Eclipse中引用jar包

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

这里写图片描述

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();
        }
    }
}

这里我们看一下运行结果
这里写图片描述
发现有警告,查了一下资料说是时区的问题,只要把上面的URl修改一下就好了,看一下修改后的URL

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

我们再在Eclipse中运行一下,又发现出现了下面的警告
这里写图片描述
这里我把没有显示出来的警告粘贴出来,如下

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";

再次运行一下,结果如下
这里写图片描述
好了,到此已经通过JDBC成功连接到MySQL数据库。连接的时候确实遇到不少麻烦,写下这篇文章希望大家少踩坑。

ps:置顶文章中有干货哦!
请大家尊重原创者版权,转载请标明出处: http://blog.csdn.net/fnhfire_7030/article/details/52452323 谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195502.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Arthas – Java 线上问题定位处理的终极利器「建议收藏」

    Arthas – Java 线上问题定位处理的终极利器「建议收藏」前言在使用Arthas之前,当遇到Java线上问题时,如CPU飙升、负载突高、内存溢出等问题,你需要查命令,查网络,然后jps、jstack、jmap、jhat、jstat、hprof等一通操作。最终焦头烂额,还不一定能查出问题所在。而现在,大多数的常见问题你都可以使用Arthas轻松定位,迅速解决,及时止损,准时下班。1、Arthas介绍Arthas是Alib…

    2025年8月22日
    6
  • 电脑关机程序

    电脑关机程序intmain(){   charinput[10];   system("shutdown-s-t60");       //60为设置的时间,60秒之后将关机   again:   printf("电脑即将关机,输入“我是猪”,即可停止\n");   scanf("%s",input);   if(strcmp("我是猪",input)==0)   {   …

    2022年7月22日
    7
  • Offer是否具有法律效力?

    Offer是否具有法律效力?

    2021年11月29日
    45
  • I2C接口与SPI和UART接口的区别「建议收藏」

    I2C接口与SPI和UART接口的区别「建议收藏」一、SPII2CUART通信速率比较:SPI>I2C>UART1、同步通信>异步通信;2、同步通信时必须有一根时钟线连接传输的两端;3、都是串行通信方式,并行通信用于内部存储间的通信,如flash;4、适合传输的距离和通信速率成反比关系;3-SPI:两条合一的数据线、1时钟线、1CS(设备片选线)SPI:2数据线、1时钟线、1CS(设备片选线)/串行同步通信全双工I2C:1数据线、1时钟线/串行同步通信半双工传输距离比UART短UART:2数据.

    2022年9月14日
    5
  • C语言的seekg函数,C++ seekg函数用法详解[通俗易懂]

    C语言的seekg函数,C++ seekg函数用法详解[通俗易懂]很多时候用户可能会这样操作,打开一个文件,处理其中的所有数据,然后将文件倒回到开头,再次对它进行处理,但是这可能有点不同。例如,用户可能会要求程序在数据库中搜索某种类型的所有记录,当这些记录被找到时,用户又可能希望在数据库中搜索其他类型的所有记录。文件流类提供了许多不同的成员函数,可以用来在文件中移动。其中的一个方法如下:seekg(offset,place);这个输入流类的成员函数的名字se…

    2022年4月29日
    179
  • Windows如何删除MySql服务

    Windows如何删除MySql服务在CMD里输入一跳命令就可以将服务删除:scdeletemysql//这里的mysql是你要删除的服务名

    2022年6月24日
    29

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号