1. 程式人生 > 其它 >6. Druid 的簡單實用 【最簡單的連線和使用】

6. Druid 的簡單實用 【最簡單的連線和使用】

Druid很強大的 但是我們只介紹他簡單的獲取 和 使用:

導包,然後建立dbconfig.properties配置檔案【名字隨便取 因為他你後面要匯入】

在檔案中編寫下面內容,druid可以根據url自動識別driverclass,所以在配置檔案中可以省略【直接寫即可,但為了防止手寫錯誤! 依舊複製!】:注意改一下編碼啊:

然後創個表 這裡是:

再然後:

編寫DruidUtil工具類:

package Druid;

import java.io.FileInputStream;
import java.io.IOException;
import java.sql.Connection;
import java.util.Properties; import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.druid.pool.DruidDataSourceFactory; public class DruidUtil{ // 建立一個Druid的資料來源 private static DruidDataSource druiddatasource = null; static { //建立一個Properties物件,匯入配置檔案 Properties properties = new
Properties(); //下面這種寫法會從classpath下來查詢配置檔案 動態網頁工程中用 //properties.load(DruidUtil.class.getClassLoader().getResourceAsStream("dbconfig.properties"));//以流的方式讀取到 然後載入到properties類中 try { //載入配置檔案 因為這個建立的是普通的Java專案 所以用絕對路徑,但如果是web專案 用上面那種方式匯入配置!!↑↑↑
properties.load(new FileInputStream("C:\\Users\\Bi-Hu\\eclipse-workspace\\c3p0\\src\\Druid\\dbconfig.properties")); //得到一個數據源 寫法: druiddatasource = (DruidDataSource) DruidDataSourceFactory.createDataSource(properties); } catch (Exception e) { e.printStackTrace(); } } // 從資料來源中得到一個連線物件 // 這個返回的connection實際上是Druid經過裝飾之後的connection public static Connection getConnection() { try { return druiddatasource.getConnection(); } catch (Exception e) { throw new RuntimeException("獲取連線失敗 請聯絡管理員【Connection】"); } } }

然後編寫 測試類:Test.java:

package Druid;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class Test {

    private static  DruidUtil druid = new DruidUtil();
    public static void main(String[] args) {
        insert();    //插入一條記錄 
    
    }
        
    public static void insert() {
        String Sql = "INSERT INTO test VALUES(10086,'小紅',22)";
        try(Connection conn = druid.getConnection();
            PreparedStatement ps = conn.prepareStatement(Sql);
            ) {
            if(conn != null) {
                ps.executeUpdate();
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}