sclsch

          java備忘

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            10 Posts :: 0 Stories :: 6 Comments :: 0 Trackbacks
          package com.secondHand.db;

          import java.math.BigDecimal;
          import java.sql.Connection;
          import java.sql.DriverManager;
          import java.sql.ResultSet;
          import java.sql.ResultSetMetaData;
          import java.sql.SQLException;
          import java.sql.Statement;
          import java.util.ArrayList;
          import java.util.Iterator;
          import java.util.List;

          public class DBUtil {
              
          private String url = "jdbc:mysql://localhost:3306/db_secondhand?user=root&password=root";

              
          private String dbUserName = "root";

              
          private String dbUserPassword = "root";

              
          private String driver = "com.mysql.jdbc.Driver";

              
          private Connection conn = null;

              
          private Statement stmt = null;

              
          private ResultSet rs = null;

              
          public DBUtil() {
                  
          try {
                      Class.forName(driver);
                  } 
          catch (ClassNotFoundException e) {
                      e.printStackTrace();
                  }
              }

              
          private Connection getConnection() {
                  
          try {
                      conn 
          = DriverManager.getConnection(url, dbUserName, dbUserPassword);
                  } 
          catch (SQLException e) {
                      e.printStackTrace();
                  }
                  
          return conn;
              }

              
          private void close(ResultSet rs, Statement stmt, Connection conn) {
                  
          if (rs != null) {
                      
          try {
                          rs.close();
                      } 
          catch (SQLException e) {
                          e.printStackTrace();
                      }
                  }
                  
          if (stmt != null) {
                      
          try {
                          stmt.close();
                      } 
          catch (SQLException e) {
                          e.printStackTrace();
                      }
                  }
                  
          if (conn != null) {
                      
          try {
                          conn.close();
                      } 
          catch (SQLException e) {
                          e.printStackTrace();
                      }
                  }
              }

              
          public List query(String sql) {
                  List list 
          = new ArrayList();

                  conn 
          = this.getConnection();
                  
          try {
                      stmt 
          = conn.createStatement();
                      rs 
          = stmt.executeQuery(sql);
                      
          // 獲取數據庫表結構
                      ResultSetMetaData rsm = rs.getMetaData();
                      
          // 取得數據庫的列數
                      int col = rsm.getColumnCount();
                      
          // 生成col長度的Object數組
                      Object[] obj = new Object[col];
                      
          // 遍歷結果集,將結果存入Object數組
                      while (rs.next()) {
                          
          for (int i = 0; i < col; i++) {
                              obj[i] 
          = rs.getObject(i + 1);
                          }
                          list.add(obj);
                      }
                  } 
          catch (SQLException e) {
                      e.printStackTrace();
                  } 
          finally {
                      
          this.close(rs, stmt, conn);
                  }
                  
          return list;
              }

              
          public void update(String sql) {
                  
          try {
                      conn 
          = this.getConnection();
                      stmt 
          = conn.createStatement();
                      stmt.executeUpdate(sql);
                  } 
          catch (SQLException e) {
                      e.printStackTrace();
                  }
          finally{
                      
          this.close(rs, stmt, conn);            
                  }
              }

              
          public static void main(String args[]) {
                  DBUtil nj 
          = new DBUtil();
                  String sql 
          = "select * from users";
                  List list 
          = nj.query(sql);
                  
          // 返回list的迭代器
                  Iterator it = list.iterator();
                  
          // 遍歷迭代器,取出結果
                  while (it.hasNext()) {
                      Object[] o 
          = (Object[]) it.next();
                      
          int id = ((BigDecimal) o[0]).intValue();
                      System.out.println(id);
                  }

              }
          }
          posted on 2009-04-03 10:51 sclsch 閱讀(187) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 九江市| 托克托县| 鄂托克旗| 锡林浩特市| 禄劝| 馆陶县| 沁水县| 石家庄市| 富平县| 慈利县| 神农架林区| 全椒县| 凤城市| 凤山市| 田林县| 多伦县| 昆明市| 万荣县| 博爱县| 本溪| 依兰县| 万宁市| 太保市| 富裕县| 绥宁县| 锦屏县| 石景山区| 三明市| 罗甸县| 普安县| 措勤县| 昌都县| 祁连县| 万宁市| 无棣县| 台东市| 得荣县| 宝应县| 庄浪县| 吴川市| 汤原县|