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

使嵌入式字段在JPA中不可更新

史宸
2023-03-14

我想让我的实体中的@Embedded字段“foo”在JPA 2.0中不可更新

    @Entity
    public class Entity {

      @Id
      @SequenceGenerator(name = "Seq", sequenceName = "SEQ", allocationSize = 10)
      @GeneratedValue(generator = "Seq", strategy = GenerationType.SEQUENCE)
      String id;

      @Embedded
      private FooEmbeddable foo;
    }

    @Embeddable
    public class FooEmbedable{

       String fooString;
       String barString;
    }

如果我有另一个实体而不是@Em的可嵌入,我可以使用@列注释的updatable=false属性,但@Em天呐没有这样的属性

我发现了一个示例,即@Col的(updatable=false)注解直接用在了嵌入式数据库的字段上。

    @Embeddable
    public class FooEmbedable{
       @Column(updatable=false)
       String fooString;

       @Column(updatable=false)
       String barString;
    }

..但是,如果我将 FooEmbedable 也用于另一个我希望它可以更新的表,会发生什么?

我错过什么了吗?

谢谢你

共有1个答案

邹俊拔
2023-03-14

updatable=false更适用于当您有多个映射同一个列并且您想指定一个作为所有者时。

如果您只是不想更新某些内容,那么就不要在应用程序中更改它(甚至不要为它添加set方法)。

 类似资料:
  • 问题内容: JPA实体类是否可以包含两个嵌入式()字段?一个例子是: 在这种情况下,a 可以包含两个实例-家庭和工作。我在Hibernate的实现中使用JPA。当我使用Hibernate Tools生成架构时,它仅嵌入一个。我想要的是两个嵌入式实例,每个实例的列名都经过区分或在前面加上一些前缀(例如home和work)。我知道,但是这要求每个属性都应单独覆盖。如果嵌入的对象()变大,那么这会变得很

  • 我想向实体类添加嵌入关系。 在我的数据库中,我有表蛋白质: 和表基准: 在基准测试中,字段目标是蛋白质表的外键 我已经从蛋白质表中找到了一个名为SupProtein的实体,它运行良好。 现在,我想向基准类添加一个嵌入关系。 这是我的基准课程: 在我的实体课程中,我添加了: 但当我尝试构建时,会出现以下错误: 我没有创建任何ORM. xml文件,在任何地方都找不到。我需要一个orm.xml文件来创建

  • 我在SQL服务器数据库中有表用户,有近30列。我还为相应的数据库表创建了一个JPA实体。JPA实体如下所示: 现在我正在尝试创建一个本机查询,它只会从用户表中获取id和name。Repository类看起来像这样。 现在,当它被执行时,它会抛出一个异常,如下所示: 当我将地址列添加到我的查询时,这个异常会消失,但它会出现在另一个字段中。 所以,现在我想修改JPA实体,使这个字段成为可选的。我试过使

  • 问题内容: 背景 我已经做了大量的规范阅读和代码测试,我认为答案是否定的,但是我想确保自己没有遗漏任何东西。 目标 基本上,我正在尝试为Go创建Active Record样式的ORM,因为我喜欢它的可读性以及从后端数据存储中抽象出来的方式。我宁愿写,也不愿在用户结构上嵌入常见的CRUD方法。 例 http://play.golang.org/p/cWyqqVSKGH 题 有没有一种方法可以使嵌入式

  • 问题内容: 我想做这样的事情: 对象ReportingFile可以是LogRequest或LogReport文件。(两者结构相同) 一个对象Reporting,其中包含一个logRequest,其中包含带日期的logReport列表。 我试图设置一个EmbededId,这将是logRequest的属性。这就是我遇到的问题。我没有来管理嵌入式ID。(http://docs.jboss.org/hib

  • 我正在尝试使用Spring Data mongodb更新mongodb中嵌入文档中的数组字段。 我想在mongodb集合中更新/插入的文档结构如下所示。 可以有更多这样的文档基于每个类型的部门,如“销售”,“市场营销”等。 即使这样做有效,我也不确定在Spring Data MongoDB中实现相同的功能是否有类似的支持。 另外,我的另一个查询是,如果我想为多个部门添加/更新员工,比如“Accou