<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    云自無心水自閑

    天平山上白云泉,云自無心水自閑。何必奔沖山下去,更添波浪向人間!
    posts - 288, comments - 524, trackbacks - 0, articles - 6
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    iBatis動態Sql解決In子句的替代方法

    Posted on 2008-01-02 20:48 云自無心水自閑 閱讀(8582) 評論(3)  編輯  收藏 所屬分類: Java心得體會

    在iBatis中,對于in子句的標準做法是采用動態sql來解決的。具體方法大致是:Java代碼傳入一個List或者數組,然后在sqlMapConfig映射中使用iterate循環取這個變量,動態地生成sql語句。
    這個標準解法的缺點是,使用起來比較麻煩
    1. 需要在sqlMapConfig中使用動態語句
    2. 需要傳入一個Iterable的變量
    對于這個問題,我使用了一個偷懶的辦法,就是使用$標記。
    在iBatis中,普通的變量,比如:v,是使用#號,在這個例子中,就是:#v#。
    這樣,iBatis會使用prepareStatement,并對變量進行變量綁定。
    而$符號是簡單替代的用法,在數據庫的執行效率上要比前一種差。但優點就是簡單方便。
    比如:
    SELECT * FROM  emp WHERE emp_no in ($empString$);
    而empString的值就是1, 2, 3. 在Log中,可以看到,Sql語句就是:SELECT * FROM emp WHERE emp_no in (1,2,3)


    評論

    # re: iBatis動態Sql解決In子句的替代方法  回復  更多評論   

    2008-04-08 01:45 by jarit
    用$等于連接SQL,不好,還要解決敏感字符問題

    # re: iBatis動態Sql解決In子句的替代方法  回復  更多評論   

    2009-12-17 21:49 by 團派家園
    3.0比2.0更好了。

    # re: iBatis動態Sql解決In子句的替代方法  回復  更多評論   

    2010-11-10 16:25 by 陳于喆
    小心sql注入
    主站蜘蛛池模板: 国产精品免费视频一区| 亚洲一区二区三区在线网站 | 国产亚洲AV无码AV男人的天堂| 成年在线观看网站免费| 久久香蕉国产线看免费| 久香草视频在线观看免费| 亚洲熟妇丰满xxxxx| 亚洲美女色在线欧洲美女| 亚洲中文字幕在线乱码| 国产午夜免费秋霞影院| 成年人免费视频观看| 亚洲人成免费电影| 午夜精品免费在线观看| 国产在线观a免费观看| 国产亚洲综合精品一区二区三区| 日韩亚洲人成在线| 亚洲av无码片区一区二区三区| 亚洲毛片在线观看| 亚洲AV无码一区东京热久久| 久久亚洲国产成人影院网站| 四虎影视精品永久免费| 四虎免费影院4hu永久免费| 日本一道在线日本一道高清不卡免费| 桃子视频在线观看高清免费完整| 91在线手机精品免费观看| 精品国产污污免费网站| 国产啪精品视频网站免费尤物| 中国一级特黄的片子免费| 国产99久久久国产精免费| 五月天国产成人AV免费观看| 老司机午夜性生免费福利| 免费一级特黄特色大片| 日韩精品免费一线在线观看 | 免费国产a国产片高清网站| 国产精品视频免费一区二区三区| 四虎成人免费观看在线网址| 日本a级片免费看| 免费看国产精品麻豆| 亚洲AV永久无码精品一区二区国产| 免费在线观看中文字幕| 亚洲性日韩精品国产一区二区|