在語法上的需要注意的:
MySQL 8.0 以下版本 - JDBC 驅動名及數據庫 URL
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/test";
MySQL 8.0 以上版本 - JDBC 驅動名及數據庫 URL
static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC";
1. MySQL在高版本需要指明是否進行SSL連接
(保障Internet數據傳輸安全利用數據加密)需要在url後面添加useSSL=true或者false不然在運行時控制檯會出現紅色警告。
useSSL=true 需要連接
useSSL=false 不需要連接
2. 項目中使用MySQL8可能出現時差問題
例:往數據庫添加的時間是(2020-01-01 09:00:00)然而數據庫中顯示的時間卻少了8個小時(2020-01-01 01:00:00)。
根本原因
因爲時區設置的問題。
UTC代表的是全球標準時間 ,但是我們使用的時間是北京時區也就是東八區,領先UTC八個小時。
UTC + (+0800) = 本地(北京)時間。
解決方案
url的時區使用中國標準時間
//北京時間東八區
serverTimezone=GMT%2B8
//上海時間
serverTimezone=Asia/Shanghai
3. 在使用Intellij IDEA連接數據庫並指定字符編碼時,遇到如下報錯:
url=jdbc:mysql://127.0.0.1:3306/framework?characterEncoding=utf8&useSSL=true
提示不允許在?useUnicode=true&characterEncoding=utf-8中使用“&”號
是IDEA將“&”當成了特殊符號。
解決方案
方法一:
將“&”改寫爲“&”方法二:
去掉useUnicode=true,只寫characterEncoding=utf-8
轉載自:BestEternity親筆。