mysql java连接器_mysql8 参考手册-JAVA Connector /J连接器入门

MySQL Connector /J是JDBC Type 4驱动程序,实现了 JDBC 4.2规范。Type 4表示驱动程序是MySQL协议的纯Java实现,并且不依赖MySQL客户端库。

对于使用通用数据访问设计模式的大型程序,请考虑使用一种流行的持久性框架(例如Hibernate, Spring的JDBC模板或MyBatis SQL Maps)来减少JDBC代码的数量,以供您调试,调整,保护和安全使用。保持。

当前有两个MySQL Connector / J版本可用:

Connector/J 8.0(以前是Connector / J 6.0;有关版本号更改的说明,请参见 MySQL Connector / J 8.0.7的更改)是用于Java 8平台的Type 4纯Java JDBC 4.2驱动程序。它提供与MySQL 5.6、5.7和8.0的所有功能的兼容性。Connector / J 8.0提供了易于开发的功能,包括使用驱动程序管理器自动注册,标准化的有效性检查,分类的SQLException,对大量更新计数的支持,对java.time 程序包中本地和偏移日期时间变体的支持,对JDBC-4的支持。 .x XML处理,对每个连接的客户端信息的支持以及对 NCHAR, NVARCHAR和 NCLOB数据类型。

Connector/J 5.1还是符合JDBC 4.2规范的Type 4纯Java JDBC驱动程序。它提供与MySQL 5.6、5.7和8.0的所有功能的兼容性。

表2.1 Connector / J版本摘要

连接器/J版本

JDBC版本

MySQL服务器版本

需要JRE

编译需要JDK

状态

8.0

4.2

5.6、5.7、8.0

JRE 8或更高

JDK 8.0或更高版本

全面上市。推荐版本。

5.1

3.0、4.0、4.1、4.2

5.6 ,5.7 ,8.0

JRE 5或更高

JDK 5.0和JDK 8.0或更高版本

一般可用性

获取和使用二进制分发包

使用与平台无关的存档: .tar.gz或.zip 可用于在任何平台上安装Connector / J的存档。使用适当的图形或命令行实用程序(例如,用于 存档的 tar.tar.gz和 用于.zip存档的 WinZip),从.tar.gz或 .zip存档中提取JAR存档到合适的位置。

配置 CLASSPATH

一旦 已经从二进制分发包提取到正确的地方,完成放置在Java类路径中的JAR归档文件安装的驱动程序,可以通过增加其完整的文件路径到你的环境变量,或者用命令直接指定文件路径启动JVM时进行线路切换。 mysql-connector-java-version.jarCLASSPATH-cp

一旦mysql-connector-java-version.jar已经从二进制分发包中提取到正确的位置,通过将JAR归档文件放在Java类路径中完成驱动程序的安装,或者将其完整文件路径添加到classpath环境变量中,或者在启动JVM时用命令行开关-cp直接指定文件路径。

例如,在Linux平台CLASSPATH上,根据您的命令外壳,使用以下形式之一将Connector / J驱动程序添加到您的驱动器:

#Bourne-compatible shell (sh, ksh, bash, zsh):

shell>export CLASSPATH=/path/mysql-connector-java-ver.jar:$CLASSPATH

#C shell (csh, tcsh):

shell>setenv CLASSPATH /path/mysql-connector-java-ver.jar:$CLASSPATH

您也可以设置CLASSPATH环境变量在全局 /etc/profile文件中。

使用JDBC DriverManager 接口连接到MySQL

在应用程序服务器之外使用JDBC时, DriverManager该类管理连接的建立。

指定DriverManager尝试与之建立连接的JDBC驱动程序。最简单的方法是Class.forName()在实现java.sql.Driver 接口的类上使用。对于MySQL Connector/J,此类的名称为 com.mysql.cj.jdbc.Driver。使用此方法,您可以使用外部配置文件来提供连接到数据库时要使用的驱动程序类名称和驱动程序参数。

Java代码的以下部分显示了如何从main()应用程序的方法注册MySQL Connector/J。

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 {

Connection conn = null;

Statement stmt = null;

ResultSet rs = null;

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

conn =

DriverManager.getConnection("jdbc:mysql://localhost/test?" +

"user=minty&password=greatsqldb");

stmt = conn.createStatement();

rs = stmt.executeQuery("SELECT foo FROM bar");

// or alternatively, if you don't know ahead of time that

// the query will be a SELECT...

if (stmt.execute("SELECT foo FROM bar")) {

rs = stmt.getResultSet();

}

catch (SQLException ex){

// handle any errors

System.out.println("SQLException: " + ex.getMessage());

System.out.println("SQLState: " + ex.getSQLState());

System.out.println("VendorError: " + ex.getErrorCode());

}

finally {

// it is a good idea to release

// resources in a finally{} block

// in reverse-order of their creation

// if they are no-longer needed

if (rs != null) {

try {

rs.close();

} catch (SQLException sqlEx) { } // ignore

rs = null;

}

if (stmt != null) {

try {

stmt.close();

} catch (SQLException sqlEx) { } // ignore

stmt = null;

}

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值