2012-03-01 4 views
0

저는 엔터티 필드에 @Transient 주석을 사용하고 있습니다. 임시 필드 값 캐싱을 사용하지 않도록 설정하면 캐시에서 얻은 모든 복사본에 기본값이 적용됩니다. 이제 한 사용자가 일시적인 값을 변경하면 다른 사용자가 볼 수 있습니다 (캐시에서 동일한 클래스를 가져 오는 경우)Eclipselink 공유 캐시 및 @Transient 필드

답변

1

가장 간단한 해결책은 클래스에 @InstantiationCopyPolicy를 추가하는 것입니다.

이것은 직조의 영향을받습니다 (직조가 활성화 된 경우 EclipseLink 만 가능, 특히 "eclipselink.weaving.internal"= "true").

postMerge/Clone DescriptorEvents를 통해 일시적인 필드를 지울 수도 있습니다.