gpt4 book ai didi

java - 没有附加表的 JPA 实体继承

转载 作者:行者123 更新时间:2023-11-29 04:57:44 25 4
gpt4 key购买 nike

我正在开发一个基于 Spring、JPA 和 Hibernate 的 Maven Java web 项目。

该项目的一部分将在另一个非常相似的项目中重用,因此被提取为 Maven 模块。这个服务和相应的实体是这样注释的:

@Service
public class MessageService

@Entity
public class Message

这两个项目都有相似但略有不同的 UserEntities。

@Entity
public class TypeAUser
@Entity
public class TypeBUser

消息实体与每个项目中的一个用户实体具有@OneToMany 关系。

我考虑过一个通用的 UserEntity,但希望避免创建额外的表以及包含“其他”项目字段的表。

欢迎任何想法。

最好的问候,斯特凡

最佳答案

如果您不想创建额外的表,那么您可能需要考虑使用 SINGLE_TABLE strategy.

@Entity
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
public class UserEntity {
...
}

@Entity
public class TypeAUser extends UserEntity {
...
}

@Entity
public class TypeBUser extends UserEntity {
...
}

关于java - 没有附加表的 JPA 实体继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33153182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com