如何将数据库生成的列值定义为 JPA 和 Hibernate 中的只读字段?

How to define database generated column values as readonly fields in JPA and Hibernate?

使用 MariaDB 10.2 可以为日期时间定义默认值,例如创建和上次修改。

我应该如何访问此列作为只读字段?因为这个值应该只在数据库的控制下,不应该从代码中修改,但我想在代码中读取这个 属性 。

很简单。只需将 insertableupdatable 属性设置为 false.

@Column(
    name = "created_on", 
    insertable = false, 
    updatable = false
)
private Timestamp createdOn;

您可以使用:

@Column(updatable=false, insertable=false)
private YourType field;

其中 @Column 用于指定持久性 属性 或字段的映射列。特别是 javax.persistence.Column.