关于GAE/J下的JDO关系(Relationships)

探讨了GAE/J的JDO实现问题,特别是拥有的关系(Owned Relationships),并提供了一个具体的实现案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

来自無處不在 
原文地址:http://blog.chaoskey.com/2010/04/29/201004291034

 

 

 

我个人认为,这是GAE/J的JDO实现中最有问题的一部分,我查看了 GAE/Java 的官方论坛,很多人对此提出了疑问,但是没有很好的解决方案。 相关的GAE/J文档所谓的范例根本不全,没有一个完全可运行的例子,甚至连最简单的例子都没有。  还好,功夫不负有心人,我终于找到了一个解决方案,现在分享出来。

 

 

按照GAE/J 的文档,它所谓的关系包括: Owned  Relationships  和 Unowned Relationships 两类。 本文说是前者,至于后者根本不是一般意思的“关系”,因为他的关系完全要由程序逻辑来保证。

这里还是继续以GAE/J 文档中的例子的完善来作为这里例子:(相关说明见红色粗体的标注)

 

1)   Employee  1->*  ContactInfo ( One-to-Many)

 

 

 

 

2)   ContactInfo 1->1 Employee     ( One-to-One)

 

 

 

 

3)  使用范例:

 

 

 

 

4)运行结果

 

 

 

 

最后的运行结果表明:  Employee(92) ,ContactInfo(93) ,ContactInfo(94) 属于同一个实体组系,并且  Employee(92) 是 ContactInfo(93) 和 ContactInfo(94)的公共父实体。   应该存储在同一个节点上(Google的存储节点)。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值