javabean字段: publishTime,数据库字段 :publish_time
criteria.add(Restrictions.between("to_char(publishTime,'yyyy-MM-dd')", map.get("starttime"), map.get("endtime")));查询总是报org.hibernate.QueryException: could not resolve property: to_char('publishTime','yyyy-MM-dd') of org.test.Goods如果传进来的是日期则
criteria.add(Restrictions.between("publishTime", map.get("starttime"), map.get("endtime")));这样写就正确,
请教to_char那个错在哪里?

解决方案 »

  1.   

    貌似hibernate把你的那个"to_char(publishTime,'yyyy-MM-dd')"作为类的属性了,当然你的类中没有这样的属性,所以就throw exception了。。
      

  2.   

    那在里面该如何避免这种情况 用to_char()方法哈!
      

  3.   

    hibernate内部处理表字段是基于java对象的。
    字段是datatime类型,传入必须是datatime类型。
    你把datatime类型用tochar转换,hibernate映射失败,当然要报错了。
      

  4.   

    qbc 一直是我的恶梦啊,以前用过一下子,后来不用了,还不如hql 和sql 来得快
      

  5.   

    你的bean对应的属性用java.sql.Date类型,starttime和endtime用java.sql.Date,就用不着类型转换了吧。。