JPA.@ManyToOne相关字段上的@Column(updatable = false)

mas*_*y88 1 annotations hibernate jpa many-to-one

在我的可审计实体中,我有一个字段creationUser,我不想在db merge操作中更新.

这是我的实体代码:

@Column(updatable=false) 
@ManyToOne(cascade = CascadeType.MERGE)
public User creationUser;
Run Code Online (Sandbox Code Playgroud)

但它给了我一个错误:

Unexpected exception
PersistenceException: [PersistenceUnit: defaultPersistenceUnit] Unable to build EntityManagerFactory
Caused by: org.hibernate.AnnotationException: @Column(s) not allowed on a @ManyToOne property: models.AreaOfMedicine.creationUser
Run Code Online (Sandbox Code Playgroud)

那么如何防止更新该字段呢?请帮忙

Pre*_*ric 9

@JoinColumn(updatable = false)而不是@Column(updatable = false).