★问一个Hibernate的问题,关于主表中集合数据的过滤。

iStringTheory 2008-04-16 04:50:55
class A {

Set B;

}

class B {

Date date;

}

想返回date值为date1的A对象,如何写这个HQL呢?谢谢!
...全文
175 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
panxuan 2008-04-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 java2000_net 的回复:]
别费劲了,用NativeQuery 查询算了!
[/Quote]
bobor_2008 2008-04-17
  • 打赏
  • 举报
回复
我也试了一下
Query query=session.createQuery("from A a where a.B.date=date1");

这个可以。
bobor_2008 2008-04-17
  • 打赏
  • 举报
回复
你要在hbm.xml文件配置上延迟加载.如:
1.
<class name="www.ibm.news.pojo.B" table="b" lazy="false">

2.
Query query=session.createQuery(" from B b where b.date=date1");

你这样可以得到B对象的date为date1的。
然后在B.getA()也就可以得到了对应的A对象了。

呵呵,我可以答非所问了,如果要实现那个结果,我想这样也是一种方法。


awusoft 2008-04-17
  • 打赏
  • 举报
回复
把那个B改成小写的吧,感觉好一点
awusoft 2008-04-17
  • 打赏
  • 举报
回复
刚才试了一下直接这样就可以了

from A a where a.B.date=date1
awusoft 2008-04-17
  • 打赏
  • 举报
回复
select a from A a,B b where a.id = b.aid and b.date=date1

试试看吧
iStringTheory 2008-04-17
  • 打赏
  • 举报
回复
楼上的似乎不行,还有其他办法么?
Ant 2008-04-16
  • 打赏
  • 举报
回复
select * from A a where a in (select * from B b where B.date=:data1 and B.owner = a)

感觉可以
老紫竹 2008-04-16
  • 打赏
  • 举报
回复
别费劲了,用NativeQuery 查询算了!
xby123 2008-04-16
  • 打赏
  • 举报
回复
HQL不会。。。。
iStringTheory 2008-04-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 seeSkyblue 的回复:]
你是不是想说返回包含有date1数据的A对象?

A里面是个集合,不可能会单独等于一个值的。
[/Quote]
1、A对象包含B对象的集合
2、查询B对象的date域为date1的集合
3、返回满足条件2的A对象集合
seeSkyblue 2008-04-16
  • 打赏
  • 举报
回复
你是不是想说返回包含有date1数据的A对象?

A里面是个集合,不可能会单独等于一个值的。
HIBERNATE - 符合Java习惯的关系数据库持久化 Hibernate参考文档 3.2 -------------------------------------------------------------------------------- 目录 前言 1. 翻译说明 2. 版权声明 1. Hibernate入门 1.1. 前言 1.2. 第一部分 - 第一个Hibernate应用程序 1.2.1. 第一个class 1.2.2. 映射文件 1.2.3. Hibernate配置 1.2.4. 用Ant构建 1.2.5. 启动和辅助类 1.2.6. 加载并存储对象 1.3. 第二部分 - 关联映射 1.3.1. 映射Person类 1.3.2. 单向Set-based的关联 1.3.3. 使关联工作 1.3.4. 值类型的集合 1.3.5. 双向关联 1.3.6. 使双向连起来 1.4. 第三部分 - EventManager web应用程序 1.4.1. 编写基本的servlet 1.4.2. 处理与渲染 1.4.3. 部署与测试 1.5. 总结 2. 体系结构(Architecture) 2.1. 概况(Overview) 2.2. 实例状态 2.3. JMX整合 2.4. 对JCA的支持 2.5. 上下文相关的(Contextual)Session 3. 配置 3.1. 可编程的配置方式 3.2. 获得SessionFactory 3.3. JDBC连接 3.4. 可选的配置属性 3.4.1. SQL方言 3.4.2. 外连接抓取(Outer Join Fetching) 3.4.3. 二进制流 (Binary Streams) 3.4.4. 二级缓存与查询缓存 3.4.5. 查询语言的替换 3.4.6. Hibernate的统计(statistics)机制 3.5. 日志 3.6. 实现NamingStrategy 3.7. XML配置文件 3.8. J2EE应用程序服务器的集成 3.8.1. 事务策略配置 3.8.2. JNDI绑定的SessionFactory 3.8.3. 在JTA环境下使用Current Session context (当前session上下文)管理 3.8.4. JMX部署 4. 持久化类(Persistent Classes) 4.1. 一个简单的POJO例子 4.1.1. 实现一个默认的(即无参数的)构造方法(constructor) 4.1.2. 提供一个标识属性(identifier property)(可选) 4.1.3. 使用非final的类 (可选) 4.1.4. 为持久化字段声明访器(accessors)和是否可变的标志(mutators)(可选) 4.2. 实现继承(Inheritance) 4.3. 实现equals()和hashCode() 4.4. 动态模型(Dynamic models) 4.5. 元组片断映射(Tuplizers) 5. 对象/关系数据库映射基础(Basic O/R Mapping) 5.1. 映射定义(Mapping declaration) 5.1.1. Doctype 5.1.2. hibernate-mapping 5.1.3. class 5.1.4. id 5.1.5. composite-id 5.1.6. 鉴别器(discriminator) 5.1.7. 版本(version)(可选) 5.1.8. timestamp (可选) 5.1.9. property 5.1.10. 多对一(many-to-one) 5.1.11. 一对一 5.1.12. 自然ID(natural-id) 5.1.13. 组件(component), 动态组件(dynamic-component) 5.1.14. properties 5.1.15. 子类(subclass) 5.1.16. 连接的子类(joined-subclass) 5.1.17. 联合子类(union-subclass) 5.1.18. 连接(join) 5.1.19. 键(key) 5.1.20. 字段和规则元素(column and formula elements) 5.1.21. 引用(import) 5.1.22. any 5.2. Hibernate 的类型 5.2.1. 实体(Entities)和值(values) 5.2.2. 基本值类型 5.2.3. 自定义值类型 5

62,634

社区成员

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

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