zoukankan      html  css  js  c++  java
  • [ibatis] prepend用法介绍

    现在项目中使用ibatis作为数据库操作工具,在深感ibatis功能强大的同时,一直也在为如何写出动态SQL而困惑,自己也是在一点点的摸索中,现在发现prepend这个小工具确实不错,下面就是在项目中自己摸索的几个小用法。

    1:通常用法,也是大多数参考文章上面介绍的方法

    xml 代码
    1. <dynamic prepend="where">        
    2.       <isNotEmpty prepend="and" property="csendUserId">        
    3.           csendUserId = #csendUserId#         
    4.       isNotEmpty>        
    5.   dynamic>   

     

    2:通常用法的小小扩充,在里面增加一个and

    xml 代码
    1. <dynamic prepend="where">        
    2.     <isNotEmpty prepend="and" property="csendUserId">        
    3.         csendUserId = #csendUserId#         
    4.         and         
    5.         isenddr = 0        
    6.     isNotEmpty>        
    7. dynamic>       

     

    3:在数据库表连接处使用,自己以前从来没有过的想法:)

    xml 代码
    1. <dynamic prepend="left outer join cms_user U on ">        
    2.     <isNotEmpty prepend="" property="creceiveUserid">        
    3.         M.csendUserId = U.pk_user         
    4.     isNotEmpty>        
    5. dynamic>    

     

    4:检索条件处使用,动态增加检索条件

    xml 代码
    1. <dynamic prepend="">        
    2.     <isNotEmpty prepend="" property="creceiveUserid">        
    3.         ,csendUserId         
    4.         ,U.VTRUENAME as sendUserName         
    5.     isNotEmpty>        
    6. dynamic>       
    7.   

     

    需要注意的是,检索的时候,如果动态检索条件的话,需要增加remapResults="true"

    [转载自:http://www.iteye.com/topic/38820]

  • 相关阅读:
    SWTDesigner注册器
    C# 创建、部署和调用WebService的简单示例
    (android实战)应用在线版本更新
    jQuery获取Select选择的Text和 Value(转)
    Android 判断sd卡和sim卡是否可用
    Android开发中如何固定屏幕显示!
    入侵网站简单方法总结
    【Android】防止UI界面被输入法遮挡(画面随输入法自适应)
    关于字符编码的问题
    最好用的mysql密码忘记的解决方法
  • 原文地址:https://www.cnblogs.com/kentyouyou/p/3038169.html
Copyright © 2011-2022 走看看