hibernate 如何查询date字段最新时间

wangyue4 2011-03-22 11:25:20
赐教大家一个问题,我现在数据库表有一个date字段。hibernate的xml配置类型是timestamp类型。
我现在要查询该字段的时间最大值。
select max(t.v_ptime) from t_cxml t,在oracle里这样写可以检索到最大的时间。

但是在hibernate下这样写会报错误
String hql = "select max(t.v_ptime) FROM t_cxml as t
Query q = session.createQuery(hql) ;


错误:java.lang.ClassCastException: java.sql.Timestamp cannot be cast to com.wccis.model.t_cxml
谢谢大家!
...全文
310 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangyue4 2011-03-25
  • 打赏
  • 举报
回复
求高手现身
孤鸿掠影 2011-03-23
  • 打赏
  • 举报
回复
坐等高手解答。
wangyue4 2011-03-22
  • 打赏
  • 举报
回复
我现在的解决方法是这样
query.setFirstResult(start);
query.setMaxResults(top);
然后加个order by 时间字段。
哪位高手还有更好的办法!,没有就结贴了啊!!!!
Gray_Sky 2011-03-22
  • 打赏
  • 举报
回复
绕过hibernate,调用jdbc api去执行你写的语句就行了。。
依赖对象(Dependent objects) 组件(Component)是一个被包含的对象,在持久化的过程中,它被当作值类型,而并非一个实体的引用。在这篇文档中,组件这一术语指的是面向对象的合成概念(而并不是系统构架层次上的组件的概念)。举个例子, 你对人(Person)这个概念可以像下面这样来建模: public class Person { private java.util.Date birthday; private Name name; private String key; public String getKey() { return key; } private void setKey(String key) { this.key=key; } public java.util.Date getBirthday() { return birthday; } public void setBirthday(java.util.Date birthday) { this.birthday = birthday; } public Name getName() { return name; } public void setName(Name name) { this.name = name; } ...... ...... } public class Name { char initial; String first; String last; public String getFirst() { return first; } void setFirst(String first) { this.first = first; } public String getLast() { return last; } void setLast(String last) { this.last = last; } public char getInitial() { return initial; } void setInitial(char initial) { this.initial = initial; } } 在持久化的过程中,姓名(Name)可以作为人(Person)的一个组件。需要注意的是:你应该为姓名的持久化属性定义getter和setter方法,但是你不需要实现任何的接口或申明标识符字段。 以下是这个例子的Hibernate映射文件: <!-- class attribute optional --> 人员(Person)表中将包括pid, birthday, initial, first和 last等字段。 就像所有的值类型一样, 组件不支持共享引用。 换句话说,两个人可能重名,但是两个Person对象应该包含两个独立的Name对象,只不过这两个Name对象具有“同样”的值。 组件的值可以为空,其定义如下。 每当Hibernate重新加载一个包含组件的对象,如果该组件的所有字段为空,Hibernate将假定整个组件为空。 在大多数情况下,这样假定应该是没有问题的。 组件的属性可以是任意一种Hibernate类型(包括集合, 多对多关联, 以及其它组件等等)。嵌套组件不应该被当作一种特殊的应用(Nested components should not be

23,405

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧