HttpServlet 은 싱글 톤 디자인 모드 입 니까?

1308 단어 HttpServletsingleto
설명:
많은 책 에서 HttpServlet 은 모두 Singleton 모드 라 고 언급 되 어 있 기 때문에 Servlet Container 에 HttpServlet 인 스 턴 스 만 만 들 수 있 습 니 다. 사실은 이 렇 습 니까?
코드 분석:
public abstract class HttpServlet extends GenericServlet {
    ...
    
    public HttpServlet() {
        // NOOP
    }
    
    ...
}

HttpServlet 소스 코드 를 분석 하면 Public 의 구조 함 수 를 제공 하고 static 의 getInstance 방법 도 찾 을 수 없습니다.분명히 이것 은 싱글 톤 디자인 모델 과 외우 고 있 습 니 다. 그런데 왜 많은 책 에서 Http Servlet 이 싱글 톤 모델 이 라 고 언급 합 니까?
Java Servlet Specification:
The servlet declaration which is either via the annotation as described in Chapter 8, “Annotations and pluggability” or part of the deployment descriptor of the Web application containing the servlet, as described in Chapter 14, “Deployment Descriptor”, controls how the servlet container provides instances of the servlet. For a servlet not hosted in a distributed environment (the default), the servlet container must use only one instance per servlet declaration. However, for a servlet implementing the SingleThreadModel interface, the servlet container may instantiate multiple instances to handle a heavy request load and serialize requests to a particular instance.
결론:
HttpServlet 의 실현 은 싱글 톤 모드 가 아니 라 많은 Servlet Container 가 하나의 Servlet 만 만 들 었 을 뿐이다.

좋은 웹페이지 즐겨찾기