When to use @Singleton annotation of Jersey? - 기본 저지으로REST 엔드 포인트 - 싱글 RequestScoped
는 모든 요청에 대한 자원 클래스의 새 인스턴스를 만듭니다. 따라서 Jersey 리소스 클래스에 주석을 달지 않으면 은 암시 적으로
@RequestScoped
범위를 사용합니다.
@RequestScoped
종단점은 다양한 이유로 더 적합 해 보입니다. 상태 비 저장이며 각 요청에 대해 새 인스턴스를 제공합니다. DAO를 구현 한 http://www.benmccann.com/hibernate-with-jpa-annotations-and-guice 예를 들어 EntityManager
개체는 ThreadLocal<EntityManager>
캐시 (Jersey, Guice and Hibernate - EntityManager thread safety)에서 수신되었으므로 @RequestScoped
환경에서만 서로 다릅니다.
반면에 Jersey 종점에 @Singleton
이라는 주석이 달린 응용 프로그램이 있습니다. 하지만 어노테이션을 제거해도 응용 프로그램의 동작/논리가 변경되지는 않습니다.
REST 엔드 포인트의 기본값 인 @RequestScoped
대신 @Singleton
을 사용해야하는 경우?