浏览 3874 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2004-03-10
希望对一个chilren集合 做查询 q = s.createFilter(folder.getChildren();, "select Dog dog from this where xxxx);; folder.getChildren() 返回一个Set, folder 是一个持久化的对象。 这个Set中有2种对象,Cat.class Dog.class 请问 我想查询一种狗狗 Dog.class 应该怎样做? 如果这样写 q = s.createFilter(folder.getChildren();, "select Dog dog from this where xxxx");; 则抛出异常 undefined alias Dog 如果这样写 q = s.createFilter(folder.getChildren();, "from Dog h where xxxx");; 则返回一个object对象 无法up casting,没搞清楚这个对象是什么东西 s.createFilter(folder.getChildren();, "select h from Dog h where xxxx");; 这样返回结果集却跟folder.getChildren()无关 是全部的结果集。 请问 我想查询一种狗狗 Dog.class 应该怎样做? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2004-03-10
我尝试 这样。。 结果说JdbcException: cannot execute query..
"select c from Cat c where (xxxx); and (h in this); |
|
返回顶楼 | |
发表时间:2004-03-10
试试from this where this.class=Cat
|
|
返回顶楼 | |
发表时间:2004-03-10
yehs220 写道 试试from this where this.class=Cat
这句没有返回任何结果,我不明白为什么。 但是他没有抛出异常。 还有一个情况需要说明,我还需要做Dog的特性的条件查询 "from this where this.class=Dog and this.dogtype=腊肠" 执行上句,结果是Exception Animal dont have property dogtype Animal is super class of Cat and Dog. |
|
返回顶楼 | |
发表时间:2004-03-10
你看看生成的sql吧
再看看文档中关于特殊属性"class"的那节 引用 还有一个情况需要说明,我还需要做Dog的特性的条件查询 "from this where this.class=Dog and this.dogtype=腊肠" 执行上句,结果是Exception Animal dont have property dogtype Animal is super class of Cat and Dog. 这好像不行,因为"this"的类型是Animal。可以强制转换吗?不是很清楚 |
|
返回顶楼 | |
发表时间:2004-03-10
xiexie yehs220
我看到了class一项,估计是要写 Full Name of Class 我已经自己生成HQL了,不采用Fitler :) 估计Filter不是为了这种用途而设计的。 |
|
返回顶楼 | |