javainthinking

          XL的個性空間和java學習之旅

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            13 隨筆 :: 13 文章 :: 20 評論 :: 1 Trackbacks
          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(1)

          隨筆分類

          文章分類

          文章檔案

          技術網站

          最喜愛的Blog和WiKi

          相關技術文檔

          最新隨筆

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          /*
           * 創建日期 2005-4-26
           *
           * TODO 要更改此生成的文件的模板,請轉至
           * 窗口 - 首選項 - Java - 代碼樣式 - 代碼模板
           */
          package com.xionglian.util;

          import java.sql.Connection;
          import java.sql.DriverManager;
          import java.sql.ResultSet;
          import java.sql.ResultSetMetaData;
          import java.sql.Statement;
          import java.util.ArrayList;
          import java.util.HashMap;
          import java.util.List;
          import java.util.Map;

          /**
           * @author xl
           *
           */
          public class Database
          {
              /** method */
          //****************************************************
              /**
               *  getConnection()
               * @return Connection
               */
              public static Connection getConnection() throws Exception
              {
                  String driver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
                  String dbUrl="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=ATM";
                  String dbUser="sa";
                  String dbPassword="37360379";
                  Connection conn=null;
                  try
                  {
                      Class.forName(driver);
                      conn=DriverManager.getConnection(dbUrl,dbUser,dbPassword);
                  }
                  catch(Exception e)
                  {
                     e.printStackTrace();
                  }
                  return conn;
              }
          //**********************************************************
              /**
               * closeConnection()
               */
              public static void closeConnection(Connection conn) throws Exception
              {
                  if(conn!=null)
                  {
                      conn.close();
                  }
              }
          //************************************************************
              /**
               * executeUpdate()
               * @return int
              */
              public static int executeUpdate(String sql) throws Exception
              {
                  int count=0;
                  Connection conn=null;
                  Statement stmt=null;
                  try
                  {
                      conn=getConnection();
                      stmt=conn.createStatement();
                      count=stmt.executeUpdate(sql);
                  }
                  catch(Exception e)
                  {
                      e.printStackTrace();
                  }
                  finally
                  {
                      closeConnection(conn);
                  }
                  return count;
              }
          //***************************************************************
              /**
               * executeQuery()
               * @return List
              */
              public static List executeQuery(String sql) throws Exception
              {
                  List list=new ArrayList();
                  Connection conn=null;
                  Statement stmt=null;
                  ResultSet rs=null;
                  try
                  {
                      conn=getConnection();
                      stmt=conn.createStatement();
                      rs=stmt.executeQuery(sql);
                     
                      ResultSetMetaData rsmd=rs.getMetaData();
                      while(rs.next())
                      {
                          Map map=new HashMap();
                          for(int i=1;i<=rsmd.getColumnCount();i++)
                          {
                              map.put(rsmd.getColumnName(i),rs.getObject(i));
                          }
                          list.add(map);
                      }
                  }
                  catch(Exception e)
                  {
                      e.printStackTrace();
                  }
                  finally
                  {
                      if(rs!=null)
                      {
                          rs.close();
                      }
                      closeConnection(conn);
                  }
                  return list;
              }
             
              /**
               * 從查詢結果List中取值,其中i為List中的第i條記錄
               * @param list
               * @param column_name
               * @param i
               * @return
               */
              public static String getValues(List list,String column_name,int i)
              {
                  try
                  {
                      return ((Map)list.get(i)).get(column_name).toString();
                  }
                  catch(Exception e)
                  {
                      e.printStackTrace();
                  }
                  return "";
              }

              /**
               * 從查詢結果List中取值,此函數適合于查詢結果只有一條的情況,此為i值為0的特殊情況
               * @param list
               * @param column_name
               * @return
               */
              public static String getValues(List list,String column_name)
              {
                  try
                  {
                      return ((Map)list.get(0)).get(column_name).toString();
                  }
                  catch(Exception e)
                  {
                      e.printStackTrace();
                  }
                  return "";
              }

             
          }

          ////1.對于insert, update, delete語句int count = DbWrapper.executeUpdate(sql);
          ////2.對于selete語句
          //java.util.List list = DbWrapper.executeQuery(sql);
          ////方法一:按名字取值,注意大小寫是嚴格區分的
          //for ( int i = 0; i < list.size(); i++ )
          //{
          // java.util.Map map = (java.util.Map)list.get(i);
          // out.println(map.get("column_name").toString());
          //}
          ////方法二:遍歷取值
          //for ( int i = 0; i < list.size(); i++ )
          //{
          // java.util.Map map = (java.util.Map)list.get(i);
          // for (java.util.Iterator it = map.keySet().iterator(); it.hasNext();)
          // {
          //     String column_name = it.next().toString());        // 取值時注意null判斷
          //     out.println(column_name + " = " + map.get(column_name)  == null ? "" : map.get(column_name).toString());
          // }
          //}

           

           


           

          posted on 2005-06-30 11:34 XL的個性空間和java學習之旅 閱讀(355) 評論(0)  編輯  收藏 所屬分類: 數據庫

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


          網站導航:
           
          主站蜘蛛池模板: 乡宁县| 南宫市| 黎平县| 上犹县| 鄂托克前旗| 会理县| 虞城县| 巴彦淖尔市| 墨脱县| 阜阳市| 神农架林区| 察哈| 台山市| 江油市| 石景山区| 瑞安市| 佛冈县| 揭东县| 绥宁县| 南岸区| 肥乡县| 伊宁县| 乡宁县| 浪卡子县| 朝阳县| 同仁县| 通道| 正安县| 池州市| 金塔县| 舞钢市| 威宁| 封开县| 杭锦旗| 江永县| 兰州市| 会昌县| 防城港市| 邢台市| 兰溪市| 江永县|