<table width="774" height="120" border="0">
    <!-- 
    <tr>
      <td width="98"> 出发时间: </td>
      <td width="168"><input type="text" name="print.drivetime" value=""></td>
      <td width="100"> 至 </td>
      <td width="380"><input type="text" name="print.drivetime" value=""></td>
    </tr>
     -->
    <tr>
      <td height="19"> 始发站: </td>
      <td><input type="text" name="print.startstationname" value="东站测试"></td>
      <td> 终点站 :</td>
      <td><input type="text" name="print.stopname" value="湖州"></td>
    </tr>
    <tr>
      <td height="17"> 购票时间: </td>
      <td><input type="text" name="sellticktime" value="2009-6-24 16:43"></td>
      <td> 至: </td>
      <td><input type="text" name="sellticktimeEnd" value="2009-8-24 16:43"></td>
    </tr>
    <tr>
      <td> 手机号: </td>
      <td><input type="text" name="print.mobile" value="13111111111"></td>
      <td> 车次号 </td>
      <td><input type="text" name="print.schemno" value="1201"></td>
    </tr>
    <tr>
      <td align="center" colspan="4"><input type="submit" value="查询">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="reset" value="重置"></td>
    </tr>   
  </table>这些条件都是可输可不输的。在这种多条件查询的情况下,大家是用拼接SQL语句还是用其它更好的方法?

解决方案 »

  1.   

    后台都是根据条件来的啊,如果你用jdbc,那当然是拼接 SQL 咯,其实不管用什么,到最后都会转换成拼接好的SQL.
      

  2.   

    非藏基础滴SQL条件拼接问题呀!楼主
      

  3.   

    在Hibernate中是否有较好的方法?
      

  4.   

    有,采用 Criteria 接口技术,比如:
    Criteria  criteria = session.createCriteria(对象名.class);
    criteria.add(Expression.like("title",  "%"+keyname.trim()+ "%"));
    criteria.add相当于sql语句中的where条件,可以写多个
      

  5.   

    要么拼接,要么用hibernate 的Criteria