[SPRING] onSave () (Hibernate / Spring 데이터 저장소와 함께 저장된 엔티티)
SPRINGonSave () (Hibernate / Spring 데이터 저장소와 함께 저장된 엔티티)
내 엔터티 계산 필드가 데이터베이스에 저장하기 전에 업데이트되어야하는 경우 (db 삽입 또는 업데이트) Hibernate 나 Spring Data Repository 전에 메소드 호출을 연결하려면 어떻게해야합니까? save ()
해결법
-
==============================
1.가장 좋은 옵션은 @PrePersist 및 @PreUpdate 주석을 사용하는 EntityListener이며 엔티티 수신기의 구성을 만들고 저장하려는 각 인스턴스에 대한 액세스 권한을 얻습니다.이 메서드는 시도 할 때마다 호출됩니다. 최대 절전 또는 스프링 데이터 저장소로 무언가를 유지 또는 업데이트
가장 좋은 옵션은 @PrePersist 및 @PreUpdate 주석을 사용하는 EntityListener이며 엔티티 수신기의 구성을 만들고 저장하려는 각 인스턴스에 대한 액세스 권한을 얻습니다.이 메서드는 시도 할 때마다 호출됩니다. 최대 절전 또는 스프링 데이터 저장소로 무언가를 유지 또는 업데이트
public class EntityToPersistListener{ @PrePersist @PreUpdate public void methodExecuteBeforeSave(final EntityToPersist reference) { //Make any change to the entity such as calculation before the save process reference.setAmount(xxxx) } }
엔티티 빈 위에 주석을 추가하기 만하면됩니다.
@Entity @Table(name = "", schema = "", catalog = "") @EntityListeners(EntityToPersistListener.class) public class EntityToPersist implements Serializable {
자세한 내용은이 링크를 확인하십시오.
from https://stackoverflow.com/questions/37863178/onsave-for-any-entity-saved-with-hibernate-spring-data-repositories by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring 빈에 파일 자원 주입 (0) | 2019.04.20 |
---|---|
[SPRING] 스프링이있는 타일 : 오류 발생 - java.lang.ClassNotFoundException : org.apache.tiles.TilesApplicationContext (0) | 2019.04.20 |
[SPRING] Spring @ KafkaListener는 일정한 간격 후에 레코드를 실행하고 폴링합니다. (0) | 2019.04.19 |
[SPRING] WebAppContext가 시작되지 않으면 시작 또는 종료 부두를 취소하는 방법 (0) | 2019.04.19 |
[SPRING] Eclipse에서 메모리 부족 오류 (0) | 2019.04.19 |