@GeneratedValue注释

问题描述

| 我有一个实体,该实体具有一个非关键列,我已将其设置为在数据库自动生成的列。 据我所知,我不能使用“ 0”,因为它仅适用于关键字段。 在这种情况下,如何指示非关键列是自动生成的?     

解决方法

如果您对让JPA提供程序为您创建对象时不感兴趣,而只想确保在数据库创建它并使用Hibernate时它保持更新:您可以使用
@org.hibernate.annotations.Generated
注释:
The annotated property is generated by the database.
根据这个类似问题的答案,似乎没有一种简单的方法可以让您的JPA为您生成价值。     ,我遇到了完全相同的问题,并使用
@PrePersist
注释解决了它。 在操作字段的方法上使用它。 警告:每次您保留实体时都会调用此函数,因此请不要忘记测试该值是否已初始化。 希望能有所帮助。我对其他方法感兴趣!