借助MariaDB 10.2,可以为日期时间定义默认值,例如创建并lastmodified。如何将数据库生成的列值定义为JPA和Hibernate中的只读字段?
我应该如何以只读字段的形式访问此列?因为这个值应该只能在数据库的控制之下,并且不应该从代码修改,但我想在代码中读取对这个属性的访问权限。
借助MariaDB 10.2,可以为日期时间定义默认值,例如创建并lastmodified。如何将数据库生成的列值定义为JPA和Hibernate中的只读字段?
我应该如何以只读字段的形式访问此列?因为这个值应该只能在数据库的控制之下,并且不应该从代码修改,但我想在代码中读取对这个属性的访问权限。
很简单。只需将insertable
和updatable
属性设置为false
即可。
@Column(
name = "created_on",
insertable = false,
updatable = false
)
private Timestamp createdOn;
您可以使用:
@Column(updatable=false, insertable=false)
private YourType field;
在使用的@Column
为持久属性或字段指定映射列。特别是它是javax.persistence.Column
。