当前位置: 首页 > 知识库问答 >
问题:

我需要对未映射的超类属性进行@transient注释吗?

谢泽语
2023-03-14

好的,下面是一个简单的例子:

我有一个抽象超类,定义如下:

abstract public class AbstractSuperEntity {

    private char someFlag;

    public void setSomeFlag(char flagValue) {
        this.someFlag = flagValue;
    }

    public char getSomeFlag() {
        return this.someFlag;
    }
 }

我的所有@entity类都继承自它。一个例子可能是:

@Entity
@Table("SOME_ENTITY")
public class SomeEntity extends AbstractSuperEntity {

    @Column(name="ID");
    private Long id;

    etc.

}

AbstractSuperEntity中的Someflag属性是否需要具有@transient

有没有我都试过了,似乎没有什么不同。但我只是害怕我错过了什么。

编辑感谢所有的快速答案。

一位同事还向我指出了jpalace.org上的JPA教程,特别是关于ORM和JPA概念的页面,其中有以下部分:

非实体超类

与映射超类类似,非实体超类不能用于查询。忽略非实体超类中存在的映射和关系注释。同样,这是因为没有可应用查询操作或关系的correponding数据库表。

共有1个答案

谭修竹
2023-03-14

不,不需要@transient注释,因为AbstractSuperEntity既不是MappedSuperClass也不是Entity。如果您希望它包含映射信息(继承的),您必须用其中一个注释来注释它。

 类似资料:
  • 问题内容: 在本文http://www.jroller.com/eyallupu/entry/hibernate_the_any_annotation中,以及在此问题中,如何使用与Hibernate @Any相关的注释?,说明了如何使用@Any批注。但是我如何才能借到每张DVD / VHS / BOOK?如何在DVD / VHS / BOOK上映射定义? 问题答案: 我不 认为 这是受支持的,并且

  • 下面两个属性有什么区别,什么时候用哪个?

  • 在这里(spring-data-elastic docs)中,我看到文档的映射(模式)是使用元数据(注释)自动生成的,这种方式与Spring Data MongoDB中的方式非常相似,但在我们的组织中,所有实体都使用@Mapping注释进行注释,并引用反映其结构的JSON文档,因此对于每个文档,尽管所有实体都有各自的注释,但都编写了实体-JSON文件。 一个示例类的小片段来提示我在说什么 和相应的

  • 代码: 产出:4 1 [代码连结][1] 前缀运算符的优先级高于逻辑运算符。2.逻辑<代码> 怀疑: > 为什么这里不遵循第一条规则?这不应该是正确的吗? 因此,在printf语句中,的值变为5。 为什么这里违反了一般的优先规则?当两个运算符的优先级相同时,关联性开始起作用。编译器不应该首先查看是计算还是

  • 我有一个对象,我正试图映射到。现在这个有一个名为的枚举,其中包含一些值。我想使用将它们映射到中的其他枚举值。以下是我到目前为止的代码: 当我尝试编译它时,我得到了错误:

  • 我有一个JSP登录页面,可以调用login action类。我使用的是Struts注释,而不是到映射,一切正常。我随机尝试了一些新东西,所以我从action类和struts中删除了所有注释。xml还没有映射到我的