隨筆-26  評論-44  文章-20  trackbacks-0
          參考 隨筆:自己動手做試卷管理系統-用戶管理部分

          我增加了3個類:DB,Table,Row
          DB:用來取得所有的table,并生產相應的Table對象,存貯在HashTable中,使用方法getTable("tableName");可以從HashTable中取得。注意:生產Table對象的時候,用了構造方法:new Table("tableName","mainPropertyName");mainProperty是給表設置的主鍵名,在config.properties中可以修改。
          Table:定義了 取得某一行(getRow),插入記錄(insert)。這兩個方法都必須通過主鍵來操作。
                       刪除記錄(delete),搜索(search)。這兩個方法任意指定條件,如刪除 屬性username="321"的記錄。
                       計數(count),此方法有給定條件的,有無條件的(用來求 整個表有多少行)。
                       列表(list),返回一個List代表了整個表的信息。用到了RowSetDynaClass(在DBExcute類中),它是個好東東。
          Row:更簡單了,兩個方法:set(String propertyName,String propertyValue)和get(String propertyName) 方法


          我的目的就是來做一個操作數據庫的通用工具,當環境和數據變化時,只需修改一下config.properties(當然 性能和我這個業余的一樣,也是有點業余的)。
          下面是我檢測的代碼:
          try {  //取得user表中主鍵名(這里的主鍵名是username)為Root的行記錄的密碼項的值
                      System.out.println(DB.getDB().getTable("user").getRow("Root").get("password"));
                  } catch (NotQueryException e) {
                      // TODO Auto-generated catch block
                      e.printStackTrace();
                  } catch (SQLException e) {
                      // TODO Auto-generated catch block
                      e.printStackTrace();
                  }
          有很多地方還需要完善,特別是異常類,我寫的異常類有點少,不夠用,然后定義的也不是很好。連接池不知道是怎么建的,我發現用連接太浪費啦,就上面的代碼就執行了3次連接,getTable的時候,getRow的時候,getPassword的時候,(用HashTable來存貯Tabel對象,盡可能的減少了連接,節約了資源)。等等很多問題,還請各位多多指教!!!

          最后提醒一下:我只是在com.yijia_ctgu.DB包中增加了3個類,以前做的頁面jsp和servlet,bean都沒變化(還沒來得及用上這個工具)。java源文件和jsp文件的編碼是gb2312,注意改一下,不然會亂碼,其實用utf-8挺好的,不過我知道的遲了,現在想改,嫌麻煩的。

          代碼下載:http://www.aygfsteel.com/Files/yijia/papermanage0.3.rar

          改進后的操作數據庫工具:http://www.aygfsteel.com/Files/yijia/yijia_ctgu.rar
          更新時間:2008年7月30日


          開機 2008-07-26 21:33 發表評論

          文章來源:http://www.aygfsteel.com/yijia/archive/2008/07/26/217716.html
          posted on 2009-10-20 09:32 開機 閱讀(94) 評論(0)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 富蕴县| 同德县| 陇西县| 固原市| 中江县| 剑河县| 买车| 阿拉善盟| 永康市| 龙江县| 瓦房店市| 武川县| 巴林左旗| 隆化县| 江门市| 通山县| 辽宁省| 怀来县| 唐河县| 湖口县| 独山县| 寿宁县| 鲁甸县| 象山县| 高台县| 白山市| 大田县| 平南县| 屏山县| 威信县| 金塔县| 长白| 海兴县| 巴彦县| 上犹县| 铁力市| 尉犁县| 连南| 宁陵县| 陈巴尔虎旗| 吉首市|