java – JDO最佳实践:将对象存储为其父级或独立的集合?
发布时间:2020-12-15 02:23:39 所属栏目:Java 来源:网络整理
导读:我有一个User和Transaction类 每个交易在逻辑上属于一个用户.但我可能需要查询某些事务子集(例如:返回用户A的所有事务,其中Transaction.type = 1) 在SQL中,我只维护一个Transaction.userID字段,将其与User表链接. 在JDO的对象世界中我应该这样做吗?存储事
我有一个User和Transaction类
每个交易在逻辑上属于一个用户.但我可能需要查询某些事务子集(例如:返回用户A的所有事务,其中Transaction.type = 1) 在SQL中,我只维护一个Transaction.userID字段,将其与User表链接. >在JDO的对象世界中我应该这样做吗?存储事务对象与用户对象ID的指针字段分开?或者我应该只查询类型= 1的事务的相应User对象和子查询(例如)? 解决方法
恕我直言,一般来说,没有最好的做法.但是,对于在面向对象的上下文中具有事务的用户,我将为用户建模以使每个事务具有对其用户对象的引用的列表或事务集.
这样,您可以获取用户的所有事务,只需获取用户对象,然后从那里获取事务列表. 另一方面,您可以查询限制为特定类型的特定用户的事务.由于每个事务都与用户对象有关联,因此您始终可以“免费”获得正确的上下文. 当然,你应该考虑像懒惰和急切加载这样的设置,这取决于实体在检索后会发生什么(它们是在进程中使用还是被序列化并传输到远程进程等). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java – Keytool创建一个受信任的自签名证书
- java – 如何调用超级(…)和这(…)在重载构造函数的情况下?
- 在Java中使用泛型的可选参数化
- Java Builder Pattern建造者模式详解及实例
- 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第
- java – 你在哪里保存常量在整个应用程序中使用?
- Glassfish 3.1.2的JDBCRealm有一个新的密码加密算法字段.这
- java – 使用Date参数时的Spring Data JPA日期“之间”查询
- java – 如何在另一个模态JDialog之上创建一个模态的JDialo
- Lambda表达式过滤长度低于1分钟的歌曲