JDBC配置問題與資料庫連線測試
阿新 • • 發佈:2018-12-09
jdbc下載地址
jdbc下載:
開啟網址後拉到下面,可以看到下圖所示
然後選中紅色方框中的檔案下載
下載完後解壓,然後進入到該目錄
把這個檔案 “mysql-connector-java-8.0.12.jar” 複製到java的安裝目錄下的/jre/lib/ext
如下圖:
這是我的java目錄,然進入 “jre” 資料夾
然後再進入 “lib” 資料夾
再進入 “ext” 資料夾
然後把 “mysql-connector-java-8.0.12.jar” 貼上 在這裡,就可以了
接下來進入測試階段:
測試我們的配置是否有用
下面是我測試的程式碼:
import java.sql.*; public class day1003 { static { try { // Class.forName("com.mysql.jdbc.Driver"); Class.forName("com.mysql.cj.jdbc.Driver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } } public static void main(String[] args) throws SQLException { String url = "jdbc:mysql://localhost:3306/hunan college of information" + "?useSSL=false&useUnicode=true&serverTimezone=UTC&characterEncoding=UTF-8"; Connection connection = DriverManager.getConnection(url,"root","123456"); Statement statement = connection.createStatement(); ResultSet resultset = statement.executeQuery("select * from 會員消費明細"); while(resultset.next()) { System.out.println( resultset.getRow() + " " + "會員卡號:" + resultset.getString(1) + ",消費時間:" + resultset.getTime(2) + ",商品編碼:" + resultset.getString(3) + ",銷售數量:" + resultset.getInt(4) + ",商品售價:" + resultset.getDouble(5) + ",消費金額:" + resultset.getDouble(6) + ",商品名稱:" + resultset.getString(7) + ",會員積分:" + resultset.getDouble(8) + ",收銀幾號:" + resultset.getInt(9) + ",單據號:" + resultset.getString(10) + ",櫃組編碼:" + resultset.getInt(11) + ",櫃組名稱:" + resultset.getString(12) ); } resultset.close(); statement.close(); connection.close(); } }
有幾個地方在這裡說明一下
當我們的SQL語句中有中文時,要在 我們的連線語句 中加入 “characterEncoding=UTF-8”這一
一條,然後可能還需要配置時區,所以要加上“serverTimezone=UTC”,再者我們使用的是Unico
de字元所以也要加上“useUnicode=true”,最後是我們不採用加密連線所以加上“useSSL=false”
最後拼起來就是:
?useSSL=false&useUnicode=true&serverTimezone=UTC&characterEncoding=UTF-8
這就像表單get提交一樣
程式執行結果如下: