posts - 8, comments - 13, trackbacks - 0, articles - 43
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          ibatis較之jdbc

          Posted on 2009-11-01 11:28 kangaroo 閱讀(539) 評論(1)  編輯  收藏 所屬分類: tech/ibatis

          iBatis是一個中層的框架,它比jdbc的層次高一些(可以說,iBatis就是以XML的形式描述的jdbc代碼,它擁有許多jdbc所沒有的架構級的優點),但是對于對象/關系映射工具,層次又要低一些。

          1. 釋放數據庫資源
          使用jdbc時,很容易犯的錯誤就是獲取資源之后忘記正確地釋放它們。雖然垃圾收集進程最終可以釋放掉這些資源,但是這種做法非常耗時,并且無法得到保證。如果對象沒有別真正釋放,那應用程序最終將會因為耗盡了資源而崩潰。iBATIS框架能幫助管理這些資源,從而減輕應用程序對開發人員們的負擔

          2. SQL注入
          如果某個應用程序使用字符串拼接的方式來創建SQL語句,但是沒有正確地對參數進行轉義,那么惡意的用戶就可以通過傳遞一些特殊的參數來改變查詢原本的意圖。
          例如:select * from product where id = 5.
          如果5是用戶傳遞過來的參數,拼接到 id = 之后的。那么用戶就可以輸入"5 or 1 = 1",從而改變了整個SQL語句的意圖。如果用戶更壞一些,輸入"5;delete from orders",結果就是你的訂單表被清空了。
          由于ibatis使用了preparedStatement,而PreparedStatement是不會受到此類攻擊影響的,所以使用ibatis可以使得你對應用程序的保護變得更加容易。

          3. 降低復雜度


          評論

          # re: ibatis較之jdbc  回復  更多評論   

          2010-03-11 21:27 by kangaroo
          bravo

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


          網站導航:
           
          主站蜘蛛池模板: 宁南县| 慈利县| 南漳县| 建平县| 木兰县| 鹤壁市| 固阳县| 辛集市| 恩平市| 莲花县| 昌都县| 宣城市| 尼勒克县| 眉山市| 榆社县| 金门县| 沅陵县| 水城县| 澜沧| 曲沃县| 额济纳旗| 黑龙江省| 新蔡县| 瑞丽市| 金昌市| 博湖县| 称多县| 贡嘎县| 宁乡县| 望奎县| 苗栗市| 秀山| 灌南县| 澳门| 湛江市| 千阳县| 遂昌县| 景洪市| 探索| 东乡县| 宾阳县|