JavaWeb —— JDBC Driver驱动及连接问题

Posted 笺笙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaWeb —— JDBC Driver驱动及连接问题相关的知识,希望对你有一定的参考价值。

一、JDBC驱动版本及连接

com.mysql.jdbc.Driver 连接MySQL 5版本  是用 mysql-connector-java-5.***.jar

 1 //MySQL5.0连接
 2  //注册数据库驱动
 3  Class.forName("com.mysql.jdbc.Driver");
 4  //通过DriverManager获取数据库连接
 5  String url = "jdbc:mysql://localhost:3306/test?characterEncoding=utf-8";
 6  String user = "root";
 7  String password = "******";
 8  con = DriverManager.getConnection(url, user, password);
 9  //通过Connection对象获取Statement对象
10  st = con.createStatement();
11  //使用Statement对象执行SQL语句
12  String sql = "select * from goods";
13  rs = st.executeQuery(sql);

 

com.mysql.cj.jdbc.Driver 连接MYSQL 6及以上版本  是用mysql-connector-java-6.***.jar 或 6以上的jar包

 1 //MySQL8.0连接
 2 //注册数据库驱动
 3 Class.forName("com.mysql.cj.jdbc.Driver");
 4 /通过DriverManager获取数据库连接
 5 String url = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=Hongkong&characterEncoding=utf-8&autoReconnect=true";
 6 String user = "root";
 7 String password = "******";
 8 con = DriverManager.getConnection(url, user, password);
 9 //通过Connection对象获取Statement对象
10 st = con.createStatement();
11 //使用Statement对象执行SQL语句
12 String sql = "select * from goods";
13 rs = st.executeQuery(sql);

 

二.、MySQL连接问题

1 String url = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=Hongkong&useUnicode=true&characterEncoding=utf-8&autoReconnect=true";

若不是用SSL连接,通过设置useSSL=false禁用;若需要是用SSL连接,为服务器证书验证提供信任库,设置useSSL=true

serverTimezone时区设置,在中国可以设置serverTimezone=Shanghai或serverTimezone=Hongkong不设置会出现错误

useUnicode=true&characterEncoding=utf-8 指定字符的编码、解码格式

autoReconnect=true 数据库连接异常中断时,自动重新连接

 

以上是关于JavaWeb —— JDBC Driver驱动及连接问题的主要内容,如果未能解决你的问题,请参考以下文章

JDBC_基础6步骤- 及优化

JDBC MySQL

javaWeb_JDBC_JDBC概述以及driver基本使用

JDBC连接MySQL

常用数据库的驱动程序及JDBC URL分享

为何我的JDBC程序总是出错?是哪里的问题呢?