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)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 平昌县| 东平县| 东山县| 平定县| 阿瓦提县| 龙口市| 六枝特区| 纳雍县| 昭通市| 朝阳区| 望都县| 盘山县| 霍林郭勒市| 铜陵市| 富顺县| 湖南省| 海伦市| 三都| 大英县| 仪征市| 深泽县| 临湘市| 衢州市| 西安市| 邻水| 宜丰县| 于田县| 兰西县| 巴南区| 鄂尔多斯市| 镇远县| 房产| 南昌县| 乐山市| 云南省| 汉源县| 江门市| 邓州市| 济源市| 泉州市| 牡丹江市|