Hibernate中的过滤集合类Filtering collections

发表于:2007-06-11来源:作者:点击数: 标签:
Hibernate的文档中写道:集合filter是一种特殊的查询,用于一个持久化集合或者数组。查询字符串可以引用this,意为当前的数组元素。 我觉得这样理解起来有些费劲。其实他的作用就是把你不需要的数据过滤掉,然后把结果集返回给你。现在举个例子说明一下: St

Hibernate的文档中写道:集合filter是一种特殊的查询,用于一个持久化集合或者数组。查询字符串可以引用this,意为当前的数组元素。

我觉得这样理解起来有些费劲。其实他的作用就是把你不需要的数据过滤掉,然后把结果集返回给你。现在举个例子说明一下:

String hql = "select p from Picgroup p join p.images t where p.id=" + groupid;

Query query = session.createQuery(hql);

List list = query.list();

Picgroup group = (Picgroup) list.get(0);

view.setName(group.getName());

view.setId(groupid);

Collection image=session.filter(group.getImages(),"select this where this.state=´C´");

//这里只取出state等于C的数据

Iterator ite = image.iterator();

看,就这么简单。一般在一对多或者多对多关系中从一方取另外一方数据时使用。

(责任编辑 火凤凰 sunsj@51cto.com  TEL:(010)68476636-8007)



原文转自:http://www.ltesting.net

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
...