Hibernate 中只查询对象中的某几个字段HQL语句该怎样写?

youyucangying 2009-09-09 09:43:35
比如:
我的对象:person:name,age,sax,....
现在我只要name,age两个属性查询出来:该怎呀做?查询出的结果该怎样取出?
...全文
687 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
feishare 2009-09-09
  • 打赏
  • 举报
回复
一样
			
//查询多个属性,其集合元素是对象数组
//数组元素的类型和对应的属性在实体类中的类型一致
//数组的长度取决与select中属性的个数

List persons= session.createQuery("select id, name from Person").list();
for (Iterator iter=persons.iterator(); iter.hasNext();) {
Object[] obj = (Object[])iter.next();
System.out.println(obj[0] + "," + obj[1]);
}
youyucangying 2009-09-09
  • 打赏
  • 举报
回复
我已知道取得的是一个数组,但要是返回的是不同类型的呢?比如说name是string age是integer那返回的数组能行吗?
zwei27 2009-09-09
  • 打赏
  • 举报
回复
同意樓上的,不過如果隻是取部分字段的話類型為Object
littleghosty 2009-09-09
  • 打赏
  • 举报
回复
直接写 select name,age from person 就可以。
guaiguaitu520 2009-09-09
  • 打赏
  • 举报
回复
from person 返回List,然后在循环list取出来不就行了
youjianbo_han_87 2009-09-09
  • 打赏
  • 举报
回复
我靠,这种问题讨论这么久,5 楼标准答案,结贴给分。
lee_09 2009-09-09
  • 打赏
  • 举报
回复
建议先把对象取出来,然后再组装你自己需要的数据
buqi001 2009-09-09
  • 打赏
  • 举报
回复
select name,age from Person
查询出来的是一个list集合,集合的元素是Object[]类型的,数组的第一个元素就对应name,第二个元素对应age,迭代取出来就行了,用强制转化 , String name = (String)object[0];
liwen19840617 2009-09-09
  • 打赏
  • 举报
回复
select p.name,p.age from Person p这样就可以啊
archko 2009-09-09
  • 打赏
  • 举报
回复
select new (注意,这里是对象的属性,所以你要看清楚大小写) from .......
connor_zheng 2009-09-09
  • 打赏
  • 举报
回复
看看能不能这样写
select new(name,age) form person
BearKin 2009-09-09
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 feishare 的回复:]
一样Java code//查询多个属性,其集合元素是对象数组//数组元素的类型和对应的属性在实体类中的类型一致//数组的长度取决与select中属性的个数
List persons= session.createQuery("select id, name from Person").list();for (Iterator iter=persons.iterator();¡­
[/Quote]

这个真不知道

67,516

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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