代码之家  ›  专栏  ›  技术社区  ›  Alexandru Severin

如何覆盖嵌入列的属性是超类

  •  0
  • Alexandru Severin  · 技术社区  · 6 年前

    我试图重写实体超类中存在的嵌入列的属性。

    我的实体如下所示:

    @Embeddable
    public class Key {
        @Column
        private String a,
    
        @Column
        private String b
    }
    
    @MappedSuperclass
    public abstract class Superclass {
    
        @EmbeddedId
        private Key key;
    }
    
    @Entity
    @Table(name = "my_entity")
    @AttributeOverride(name = "b", column = @Column(name="renamed_b"))
    public class MyEntity extends Superclass {
    
    }
    

    我试过用 AttributeOverride 但它什么都不起作用。

    如果我在嵌入的字段上移动attributeOverride注释,它就会工作,但是我不能修改超类。

    有什么解决办法吗?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Marcin    6 年前

    "b" "key.b"

    @Entity
    @Table(name = "my_entity")
    @AttributeOverride(name = "key.b", column = @Column(name="renamed_b"))
    public class MyEntity extends Superclass 
    }