一个特定的表(或类)可以与其他表(或类)有多个一对一以及一对多的关系吗?
例如,现在我正在开发一个银行应用程序,我有一个UserDetails表,它有一个主键作为userId。现在,我将此 userId 用作其他各种表中的外键,例如 Transactions、BalanceInfo、AccountDetails 等,其中 UserDetails 可以作为一对一和多对一关系进行关联。那么,这是正确的实施方式吗?另外,如果我不将它们与任何类型的关系相关联,然后只将它们与外键约束相关联,会发生什么情况?
简短的回答,是的,你可以拥有尽可能多的关系, 你可以创造。
至于这是否正确,这取决于系统需要工作的条件。如果UserDetails是域中每个其他对象的重要组成部分,并且它们需要UserDetails才能运行,那么当然可以。
如果将 PK 和 FK 约束保留在 DB 中,并且不让 Hibernate 意识到它们,则可能会在没有正确编码的情况下违反它们。如果使它们成为延迟加载的,则关系存在,但不必将数据加载到应用程序中。
只有在对域模型进行适当的分析之后,才能对这是否正确做出真正的回答,因此这是您必须决定的事情。
问题内容: 我作为一个网络程序员已经这么长时间了,而且不知道这个问题的答案,这让我感到很愚蠢。我实际上希望这是可能的,我只是不知道答案,而不是我认为答案是什么(那是不可能的) 。 我的问题是,是否有可能使一个CSS类从另一个CSS类(或多个CSS类)“继承”。 例如,假设我们有: 我想做的是这样的: 其中“ .composite”类将同时显示内联并具有红色背景 问题答案: 有像LESS这样的工具,
我需要在我的数据库中创建多个多对多的关系。 有一个“主”表,我们称之为“项目”。 然后有3个表包含“选项”。 假设我们有:品类、地域、用户。这些保存的唯一信息是项目的名称和ID。 可以将多个类别、区域和用户分配给多个项目。 因此,我有两个选项来创建这种关系: 1)为每个'选项'表创建关系表。每个表包含两列:project_id和category_id、region_id或user_id。使用这种方
我有3个表、、。 是表中的主键,也是、表中的主键和外键。我有一个sql,它在这三个表上留下了外部连接,以从三个表中获取不同的列值。 问题:/表首次为空。这2个表将由其他进程更新。在对obj执行一些udpates并将其保存后,创建了一个新行和,其cstid为。 注意:对于表中的特定,存在一行或多行 必需的解决方案:我不希望在/表中保留一行,除非在/中存在来自的的一行。 映射:customer.hbm
我有一个情况,几个表(TableA 当我使用hibernate逆向工程从这个数据库生成JPA实体时,它会在TableA和TableB for TableC中创建多对一关系。通常要创建一对一的关系,我将TableA主键作为TableC的主键,但由于我有其他表(TableB)也与TableC具有一对一的关系,我不能这样做。因此我不得不在TableA和TableB中使用TableC的外键(这导致了JPA
问题内容: 我有一个使用联接表建模的一对多关系: 这些表应该模拟一个t1与多个t2的关系。使用JPA为这些表建模的正确方法是什么? 问题答案: 一个T1到多个T2的典型表是在T2上有一个指向T1的外键。通常不需要T1_T2表。 这样,JPA结构将是一对多的,可能是双向的。 可能会有一些安排,以使您描述的结构起作用。您可以更改T1_T2: 在T2上添加唯一约束(以便仅允许一个T2) 那真的是你想要的
问题内容: 假设我有一个具有两个不同的一对多关系的对象。很像: 和 假设我的对象有两个与这两个对象相关的列表。 我已经阅读了以下示例:http : //forum.springsource.org/showthread.php?50617-rowmapper -with-one-to-many- query,其中说明了如何使用单个一对多关系来执行此操作。为了您的方便,这里是替代: 我认为这并不涉及