使用Druid連接池查詢表中數據

Druid連接池使用步驟

步驟:

  1. 導入druid相應的jar包
    2. 定義配置文件
    3. 創建數據庫連接池對象
    4. 獲取數據庫連接對象
    5. 創建sql語句
    6. 創建執行sql對象
    7. 創建一個ResultSet結果集對象
    8. 然後在用ResultSet裏的方法 next()判斷數據
    9. 輸入結果
    10. 釋放資源

1. jar包

Druid-1.0.9.jar:是Druid包
mysql-connection-java-5.1.48-bin.jar是:JDBC包
注意:兩個包都要導入進去

2. 配置文件

在這裏插入圖片描述

到配置文件裏面修改成你們的數據庫地址、用戶名和密碼

package Druid;

import com.alibaba.druid.pool.DruidDataSourceFactory;

import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Properties;

/**
 * Druid 德魯伊連接池
 *  用連接池查詢user表中的數據
 */
public class JdbcDruidDemo {
    public static void main(String[] args) {
        //將這些弄到大括號外面提升作用域,好釋放資源
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        try {
            //1. 導入druid相應的jar包
            //2. 定義配置文件
                //2.1 定義一個io流集合
            Properties pro = new Properties();
                //2.2 將druid.properties文件讀取出來並寫入Properties集合中
            pro.load(JdbcDruidDemo.class.getClassLoader().getResourceAsStream("druid.properties"));
            //3. 創建數據庫連接池對象  通過工廠來獲取 DruidDataSourceFactory 然後傳遞Properties對象 實現標準接口:DataSource
            DataSource ds = DruidDataSourceFactory.createDataSource(pro);
            //4. 獲取數據庫連接對象
            conn = ds.getConnection();
            //5. 創建sql語句
            String sql = "select * from user";
            //6. 創建執行sql對象
            stmt = conn.createStatement();
            //7. 創建一個ResultSet:結果集對象,封裝查詢結果
            rs = stmt.executeQuery(sql);
            //8. 然後在用ResultSet裏的方法 next():遊標向下移動一行 判斷是否有數據 有就是true,沒有就是false
            while (rs.next()) {
                //rs.getString():傳遞的是數據庫的字段
                String username = rs.getString("username");
                int password = rs.getInt("password");
                //9. 輸入結果
                System.out.println(username + "    " + password);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }finally{
            //10. 釋放資源
            try {
               if(rs != null){
                   rs.close();
               }
            }catch(Exception e){
                e.printStackTrace();
            }
            try {
                if(stmt != null){
                    stmt.close();
                }
            }catch(Exception e){
                e.printStackTrace();
            }
            try {
                if(conn != null){
                    conn.close();
                }
            }catch(Exception e){
                e.printStackTrace();
            }
        }
    }
}

運行結果:

在這裏插入圖片描述

查詢sql結果:

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章