1. 程式人生 > >java將資料庫結果集封裝成Map, java獲取資料庫欄位 (修定)

java將資料庫結果集封裝成Map, java獲取資料庫欄位 (修定)

這段程式碼是將結果集封裝到Map裡,欄位為key,記錄為value。然後再將每個Map新增到List裡。

大家有什麼建議和想法可以留言給我。

  1. import java.sql.Connection;  
  2. import java.sql.DriverManager;  
  3. import java.sql.ResultSet;  
  4. import java.sql.ResultSetMetaData;  
  5. import java.sql.SQLException;  
  6. import java.sql.Statement;  
  7. import java.util.ArrayList;  
  8. import
     java.util.HashMap;  
  9. publicclass DBHelper {  
  10.     publicstaticvoid main(String[] args) throws ClassNotFoundException,  
  11.             SQLException {  
  12.         Class.forName("oracle.jdbc.driver.OracleDriver");  
  13.         String url = "jdbc:oracle:thin:@localhost:1521:orcl";  
  14.         String user = "ssmy"
    ;  
  15.         String password = "ssmy";  
  16.         Connection conn = DriverManager.getConnection(url, user, password);  
  17.         Statement stmt = conn.createStatement();  
  18.         /*//造資料 
  19.          * for(char letter='a';letter<='z';letter++){ int id = letter-97; String 
  20.          * name = ""; String sex = (id&1)!=0?"男":"女"; String state = "Y";
     
  21.          *  
  22.          * String sql = 
  23.          * "insert into person (id,name, sex,state) values("+id+","+ 
  24.          * name+","+sex+","+state+")"; ps.execute(sql); } 
  25.          */
  26.         ResultSet rs = stmt.executeQuery("select t.* from SSMY_SYS_USER t");  
  27.         ResultSetMetaData data = rs.getMetaData();  
  28.         ArrayList<HashMap<String, String>> al = new ArrayList<HashMap<String, String>>();  
  29.         while (rs.next()) {  
  30.             HashMap<String, String> map = new HashMap<String, String>();  
  31.             for (int i = 1; i <= data.getColumnCount(); i++) {// 資料庫裡從 1 開始
  32.                 String c = data.getColumnName(i);  
  33.                 String v = rs.getString(c);  
  34.                 System.out.println(c + ":" + v + "\t");  
  35.                 map.put(c, v);  
  36.             }  
  37.             System.out.println("======================");  
  38.             al.add(map);  
  39.         }  
  40.         System.out.println(al);  
  41.         rs.close();  
  42.         stmt.close();  
  43.         conn.close();  
  44.     }  
  45. }