Какой еще вариант, если я не хочу использовать аннотацию @Generated в Hibernate? - PullRequest
0 голосов
/ 04 сентября 2018

@ Сформированные (GenerationTime.ALWAYS) @Column (name = "create_date", вставляемый = false, обновляемый = false)

Ответы [ 2 ]

0 голосов
/ 04 сентября 2018

@ Созданная аннотация

GenerationTime.ALWAYS

GenerationTime.ALWAYS обновляет сущность при вставке и Обновить. В случае GenerationTime.ALWAYS свойство не должно быть вставляемым и обновляемым.

@Generated(GenerationTime.ALWAYS)
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "modified_date", updatable = false, insertable = false)
private Date modifiedDate;

GenerationTime.INSERT

GenerationTime.INSERT обновляет сущность только во время вставки. В случае GenerationTime.INSERT свойство не должно быть вставляемым.

@Generated(GenerationTime.INSERT)
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "created_date", insertable = false) 
private Date createdDate;

GenerationTime.NEVER

GenerationTime.NEVER не обновляет сущность ни при обновлении, ни во время вставки.

@Generated(GenerationTime.NEVER)

@ CreationTimestamp @ UpdateTimestamp

Эти аннотации также могут использоваться каждым из следующих типов:

  • java.time.LocalDate (начиная с Hibernate 5.2.3)
  • java.time.LocalDateTime (начиная с Hibernate 5.2.3)
  • java.util.Date
  • java.util.Calendar
  • java.sql.Date
  • java.sql.Time
  • java.sql.Timestamp

    @Column
    @CreationTimestamp
    private LocalDateTime createDateTime;
    
    @Column
    @UpdateTimestamp
    private LocalDateTime updateDateTime;
    
0 голосов
/ 04 сентября 2018

У вас есть 3 варианта.

ALWAYS
Indicates the value is generated on insert and on update.
INSERT
Indicates the value is generated on insert.
NEVER
Indicates the value is never generated.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...