티스토리 뷰

이 문제에 접근하는 방법에는 몇 가지가 있습니다.

  1. Hibernate 직원들은 데이터베이스에서 최신 데이터를 검색하기 위해 아마도 다른 세션을 열어야한다고 말할 것입니다. 그들은 세션의 의도가 비교적 수명이 짧은 작업 단위로 범위가 지정되어야한다고 지적 할 것입니다.

  2. 항상 데이터베이스에서 가장 최신 상태를 가져 오기 위해 메서드 Session.Refresh()내부에 호출을 GetPerson()넣거나 자체 Refresh()메서드를 통해 해당 기능을 노출 할 수 있습니다.

  3. 또는 Person개체 자체 에 대한 핸들이있는 경우 다시로드하기 전에 세션 캐시 Session.Evict()에서 Person개체 를 제거 할 수도 있습니다 .

제 경험상, 저는 # 2와 # 3을 모두 시도했고 결국 항상 # 1을하기 위해 리팩토링을했습니다.



출처
https://stackoverflow.com/questions/1903160
댓글
공지사항
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31