本帖最后由 xiaomaha520 于 2010-04-22 16:38:21 编辑

解决方案 »

  1.   

    1:having 不支持吗?如果有这样的需求怎么办?
    直接用SQL, hibernate也支持sql
      

  2.   

    hibernate除了使用hql语句 也可以使用sql语句!
      

  3.   

    动态条件查询 null!=属性 是什么意思啊
      

  4.   


    sql能用我知道,但用sql有可能失去hibernate跨数据库的作用啦!
      

  5.   


    比如User 中有name 和 age
    页面给一个条件 用户可以选择我按照name来查询,或按照age来查询然后程序可以通过判断属性值是否为空然后生成hql语句 比如null!=name 
    那么 new StringBuilder().append("and ").append(值)我不想这样使用,能否有好的方式?
      

  6.   

    用JAVA实现就行了
    if (name !=null) {
     sql.append("name=?")
    }
    if (age !=null) {
      sql.append("age=?")
    }
      

  7.   

    hibernate完全可以对对象进行更新查找为什么还要拼sql。。
      

  8.   

    刚学hibernate,也不知道楼上好几位说说话前想过没有!!有时候不要乱说!
    7楼这位兄弟说的有道理,既然面向对象了,为什么还要拼接语句,尤其是那位if else的朋友,写出来一定被boss骂!!
     hibernate支持对象查询
      解决办法
      1:示例查询
      2:Query.setProperties()绑定对象
    都可以实现,小弟刚学到了解到这块,请老鸟们指点哈哈......说点题外话:
    如果单纯的jdbc实现动态参数,我 觉得这个方法是很不错。
    http://free-zhou.javaeye.com/blog/671193