小弟接触java10天跟着老师做项目,遇到个问题,求大神帮助
要查询在某个时间段的数据,这个用ibatis动态sql怎么写啊,里面好像不能用>=,<=

解决方案 »

  1.   

    可以用的,只不过要用
    <![CDATA[ ]]>
    将>、<包含起来,否则会影响sql语句的生成
    下面是个例子<isNotNull prepend="and " property="startDate"><![CDATA[GMTCREATE >= #startDate# ]]></isNotNull>
    <isNotNull prepend="and " property="endDate"><![CDATA[GMTCREATE <= #endDate# ]]></isNotNull>
      

  2.   

    <isNotNull prepend="and " property="startDate"><![CDATA[GMTCREATE >= #startDate# ]]></isNotNull>
    之后,应该拼接语句啊,这个比较了之后怎么弄
      

  3.   

    这个论坛怎么@啊,我刚接触java一来就搞spring,ibatis什么的 好有压力,大神们能不能帮一下
      

  4.   

    这个后面继续你的SQL啊
    就是不用写 time>=starttime了是吧大神 我的Q512999727,求帮助啊
      

  5.   

    这个后面继续你的SQL啊
    就是不用写 time>=starttime了是吧大神 我的Q512999727,求帮助啊
    <isNotNull prepend="and " property="startDate"><![CDATA[GMTCREATE >= #startDate# ]]></isNotNull>这就的意思就是 startDate不等于空的情况下 GMTCREATE >= #startDate# ,我们不让上QQ的,你们还能上QQ,好幸福啊
      

  6.   

    这个后面继续你的SQL啊
    就是不用写 time>=starttime了是吧大神 我的Q512999727,求帮助啊
    <isNotNull prepend="and " property="startDate"><![CDATA[GMTCREATE >= #startDate# ]]></isNotNull>这就的意思就是 startDate不等于空的情况下 GMTCREATE >= #startDate# ,我们不让上QQ的,你们还能上QQ,好幸福啊
    还是学生啊,跟着老师做的,老师不懂,也不教这个date比较老出错我勒个去格式转换的都乱了,这个startDate就是从dto里面传过来的数据吗
      

  7.   

    呵呵,在网上找个视频教程吧,http://java.itcast.cn/news/f66a0672/cfe8/4f59/81a2/c814fec81658.shtml 下载下来看看吧。
      

  8.   

    谢谢啊,我刚接触java,以前搞.Net的,老师都不管我们的啊,一开始就搞spring mvc,还ibatis,真难懂,大神有什么心得,引导一下啊
      

  9.   

    哎,自己搞出来了真纠结啊,以前写.net都是直接在外面if的,感觉这个ibatis也蛮麻烦啊
      

  10.   

    哎,自己搞出来了真纠结啊,以前写.net都是直接在外面if的,感觉这个ibatis也蛮麻烦啊搞出来就好,你可能还没接触过hibernate,ibatis相对于hibernate来说很灵活,可以把程序里面的各种判断条件写在配置文件里面
    不过话说回来,在实际运用的时候还是有很多细节问题需要注意的,尤其是动态sql语句。以后多练几次就熟悉了,基本上一个项目做下来就差不多了
    我的qq就是id后面的那堆数字:751075306
      

  11.   

    有两种解决办法:
    关于在xml中一些特殊符号的表示 
    原符号   <    <=    >    >=     &      '       "
    替换符号 &lt; &lt;= &gt; &gt;= &amp; &apos; &quot;
    或者将sql语句写在CDATA标签内告诉mybatis的XML解析引擎不要用xml的格式规范来解析
      <![CDATA[            ......               sql语句
       ]]>
      

  12.   

    如果只写一个时间,between and就不行啦