Menu Close

数据库的driverClassName与url

1. MariaDB

详细信息参见官网:https://mariadb.com/kb/en/about-mariadb-connector-j/

1.1. driverClassName

org.mariadb.jdbc.Driver

1.2. url与参数

jdbc:mariadb://IpAddress:Port/dbName

1.3. 示例

drive-class-name: org.mariadb.jdbc.Driver
url: jdbc:mariadb://192.168.1.1:6006/study
username: study
password: study

1.4. maven中央仓库下载依赖

  • 搜索关键字:MariaDB Java Client

  • 参考(2022-04-14下载)

<!-- https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client -->
<dependency>
    <groupId>org.mariadb.jdbc</groupId>
    <artifactId>mariadb-java-client</artifactId>
    <version>3.0.4</version>
</dependency>

2. Oracle

详细信息参见官网:https://docs.oracle.com/en/database/oracle/oracle-database/21/jajdb/oracle/jdbc/OracleDriver.html

2.1. driverClassName

oracle.jdbc.driver.OracleDriver

2.2. url与参数

url: jdbc:oracle:thin:@IpAddress/ServiceName(SID)

2.3. 示例

driver-class-name: oracle.jdbc.driver.OracleDriver
url: jdbc:oracle:thin:@192.168.1.1/study
username: study
password: study

2.4. maven中央仓库下载依赖(注意要同时下载 2.5 )

  • 搜索关键字:ojdbc8

  • 参考(2022-04-14下载)

<!-- https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc8 -->
<dependency>
    <groupId>com.oracle.database.jdbc</groupId>
    <artifactId>ojdbc8</artifactId>
    <version>21.5.0.0</version>
</dependency>

2.5. maven中央仓库下载依赖

  • 搜索关键字:Orai18n

  • 参考(2022-04-14下载)

<!-- https://mvnrepository.com/artifact/com.oracle.database.nls/orai18n -->
<dependency>
    <groupId>com.oracle.database.nls</groupId>
    <artifactId>orai18n</artifactId>
    <version>21.5.0.0</version>
</dependency>

3. MySQL

  • driverClassName
com.mysql.jdbc.Driver    # mysql-connector-java 5.x及之前版本中的驱动类名
com.mysql.cj.jdbc.Driver # mysql-connector-java 6.x及后续版本中的驱动类名

3.1. url与参数

参数名称 参数说明-------------------------------------------------------------------------------
user 数据库用户名(用于连接数据库)
password 用户密码(用于连接数据库)
useUnicode 是否使用Unicode字符集
characterEncoding 指定字符编码
autoReconnect 当数据库连接异常中断时,是否自动重新连接
autoReconnectForPools 是否使用针对数据库连接池的重连策略
failOverReadOnly 自动重连成功后,连接是否设置为只读
maxReconnects autoReconnect设置为true时,重试连接的次数
initialTimeout autoReconnect设置为true时,两次重连之间的时间间隔(单位:秒)
connectTimeout 和数据库服务器建立socket连接时的超时时间(单位:毫秒),0表示永不超时,适用于JDK
socketTimeout socket操作(读写)超时时间(单位:毫秒), 0表示永不超时
useSSL 是否进行SSL连接
serverTimezone 数据库时区设置,mysql8.x的jdbc升级了,增加了时区(serverTimezone)属性,并且不允许为空

3.2. 示例

# Kaven是需要连接的具体数据库名
url:jdbc:mysql://localhost:3306/Kaven

# 使用Unicode字符集,并且指定UTF-8字符编码
url:jdbc:mysql://localhost:3306/Kaven?useUnicode=true&characterEncoding=UTF-8

# 当数据库连接异常中断时,自动重新连接
url:jdbc:mysql://localhost:3306/Kaven?autoReconnect=true

# 不进行SSL连接
url:jdbc:mysql://localhost:3306/Kaven?useSSL=false

# 不进行SSL连接,并且设置数据库时区为亚洲上海
url:jdbc:mysql://localhost:3306/Kaven?useSSL=false&serverTimezone=Asia/Shanghai

3.3. maven中央仓库下载依赖

  • 搜索关键字:MySQL Connector/J

  • 参考(2022-04-14下载)

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.28</version>
</dependency>