0
내 환경은 Hibernate/JPA 외에 Spring의 저장소, 서비스를 이용한다. 나는 그들의 ID로 사용자를 쿼리하면 궁금해하지만 루프 또는 무언가를 통해 두 번 쿼리, 그 사용자의 1 또는 2 인스턴스가있을 것입니다? Spring은 이미 메모리에있는 사용자임을 확인하고 쿼리 된 첫 번째 참조를 반환합니다.중복 쿼리 결과가 참조를 반환합니까?
내 환경은 Hibernate/JPA 외에 Spring의 저장소, 서비스를 이용한다. 나는 그들의 ID로 사용자를 쿼리하면 궁금해하지만 루프 또는 무언가를 통해 두 번 쿼리, 그 사용자의 1 또는 2 인스턴스가있을 것입니다? Spring은 이미 메모리에있는 사용자임을 확인하고 쿼리 된 첫 번째 참조를 반환합니다.중복 쿼리 결과가 참조를 반환합니까?
오프라인 트랜잭션 격리 때문에 새로운 참조를 얻게됩니다. 즉, 동일한 ID를 가진 현재 사용자가 동시에 발생하는 다른 트랜잭션에 의해 변경되어 동일한 인스턴스를 제공하는 것이 안전하지 않을 수 있음을 의미합니다.
그리고 쉽게 테스트 할 수 있습니다. 디버거를 켜고 확인하십시오.