상위 24개 서블릿 인터뷰 질문 및 답변

게시 됨: 2021-06-03

서블릿은 서버의 기능을 확장하는 Java 기반 소프트웨어입니다. 컨테이너 요청에 응답하고 웹 응용 프로그램을 호스팅하는 모든 서버의 중요한 구성 요소입니다. 웹사이트의 백엔드(서버 측이라고도 함)를 실행하려면 서블릿과 서블릿이 작동하는 방식에 익숙해야 합니다.

Java 기반 서버가 널리 사용되기 때문에 웹 서버로 작업하려면 서블릿에 대해 배우는 것이 필수적입니다.

개발자 인터뷰를 준비하고 계셨다면 잘 찾아오셨습니다. 다음 서블릿 인터뷰 질문은 인터뷰에서 무엇을 기대해야 하는지에 대한 아이디어를 제공합니다.

목차

주요 서블릿 인터뷰 질문 목록

  1. 서블릿이란 무엇을 의미합니까?

답변: 서블릿은 자바 기술이며 이를 관리하는 컨테이너를 서블릿 엔진이라고 합니다. 서블릿은 동적 콘텐츠를 생성하고 요청 및 응답을 통해 클라이언트와 상호 작용합니다. 일반적으로 링크를 클릭하거나 웹사이트에서 모든 유형의 작업을 수행할 때 실행됩니다. 서블릿은 애플릿과 유사하지만 차이점은 애플릿이 클라이언트의 시스템에서 처리되는 동안 서버에서 처리된다는 점입니다.

  1. 서블릿 컨테이너란?

답변: 서블릿 컨테이너는 네트워크 서비스를 제공하는 웹 서버의 일부입니다. MIME 기반 요청 및 응답에 따라 다릅니다. 서블릿 컨테이너는 서블릿을 처리합니다.

  1. 왜 서블릿을 사용합니까?

답변 : 일반적으로 서블릿은 플랫폼에 독립적이기 때문에 사용합니다. 또한 플랫폼 중립적 바이트 코드로 컴파일됩니다. Java 바이트 코드를 Java 지원 웹 서버에 동적으로 로드할 수 있습니다.

  1. 필터는 무슨 뜻인가요?

답변 : 필터는 HTTP 요청, 응답 및 헤더의 내용을 변환할 수 있는 재사용 가능한 코드 조각입니다.

  1. 애플리케이션 서버와 웹 서버의 차이점은 무엇입니까?

답변 : 웹 서버는 클라이언트 브라우저의 HTTP 요청을 처리하고 HTML 응답으로 응답합니다. HTTP 언어를 처리하고 HTTP 프로토콜에서 실행됩니다.

반면에 애플리케이션 서버는 웹 서버의 기본 기능과 함께 JMS 메시징 지원, Enterprise JavaBeans 지원 등의 추가 기능을 제공합니다.

  1. 세션이란 무엇을 의미합니까?

답변: 세션은 기간을 의미합니다. 서블릿에서 세션은 서블릿이 여러 HTTP 요청에서 웹 응용 프로그램과의 사용자 상호 작용을 추적하는 데 사용하는 개체입니다.

  1. 서블릿 컨텍스트란 무엇을 의미합니까?

답변: 서블릿 컨텍스트는 서블릿이 해당 서블릿 컨테이너와 통신하기 위해 사용하는 방법 집합을 정의합니다. 서블릿 컨테이너는 초기 구성 또는 매개변수를 전체 애플리케이션과 공유하기 위해 이 객체를 생성합니다.

getServletContext() 메소드를 사용하여 ServletContext 객체를 얻을 수 있습니다. 응용 프로그램에 대한 서블릿 컨텍스트는 하나만 있습니다. ServletContext를 사용하여 전체 애플리케이션에서 정보를 공유할 수 있습니다.

참고: 이것은 가장 중요한 서블릿 인터뷰 질문과 답변 중 하나입니다.

  1. 서블릿 매핑은 무엇을 의미합니까?

답변: 서블릿 매핑은 특정 URL에 대해 Java 서블릿을 호출해야 하는 특정 웹 컨테이너를 제공합니다. URL 패턴을 서블릿에 매핑합니다. 클라이언트가 요청을 보내면 서블릿 컨테이너는 이를 전달할 애플리케이션을 결정하고 시스템은 컨텍스트 경로를 일치시켜 서블릿 매핑을 수행합니다.

  1. 데이터베이스에 새 데이터를 입력한 후 어떻게 자동으로 새로 고침합니까?

답변: 서버 푸시 및 클라이언트 측에서 새로 고침을 사용하여 데이터베이스에 새 데이터를 입력할 때 자동으로 새로 고칠 수 있습니다.

  1. 서블릿의 생명주기를 설명하라.

답변: 서블릿의 수명 주기는 5단계로 나뉩니다. 먼저 서블릿 클래스를 로드한 다음 서블릿 인스턴스를 만듭니다. 그런 다음 init() 메서드를 호출한 다음 서비스 메서드를 호출하고 마지막으로 destroy() 메서드를 호출합니다. 서블릿에는 new, ready, end의 세 가지 상태가 있습니다.

서블릿은 생성될 때 새 상태가 됩니다. init() 메서드를 호출하면 준비 상태가 됩니다. 마지막으로 destroy() 메서드가 호출되면 종료 상태가 됩니다.

  1. Servlet 2.5에 어떤 새로운 기능이 추가되었습니까?

답변: Servlet 2.5에는 다음과 같은 새로운 기능이 포함되어 있습니다.

  • J2SE 5.0 종속성
  • 주석 지원
  • 클래스 로딩
  • 새 web.xml
  • 엣지 케이스 설명
  • 제한 제거
  1. 모든 서블릿이 구현하거나 구현해야 하는 인터페이스는 무엇입니까?

답변: 모든 서블릿은 서블릿 인터페이스를 구현해야 합니다.

  1. 서블릿은 언제 로드됩니까?

답변 : 다음과 같은 경우 서블릿이 로드됩니다.

  • 첫 번째 요청이 이루어집니다.
  • 서버 및 자동 로딩 시작.
  • 단일 인스턴스가 모든 요청에 ​​동시에 응답하므로 메모리가 절약됩니다.
  • 관리자가 수동으로 로드합니다.
  1. 서블릿은 언제 언로드됩니까?

답변 : 서버가 종료되거나 관리자가 수동으로 언로드하면 서블릿이 언로드됩니다.

  1. MIME 유형이란 무엇을 의미합니까?

답변: MIME은 다목적 인터넷 메일 확장을 의미합니다. MIME 유형은 브라우저에 보내는 정보에 대한 정보를 제공하는 HTTP 헤더입니다. 클라이언트의 데이터 렌더링을 돕습니다. 일반적인 MIME 유형은 텍스트(HTML), 텍스트(일반), 이미지(jpeg), 애플리케이션(jar) 등입니다.

특정 파일의 올바른 MIME 유형을 얻으려면 ServletContext getMimeType() 메소드를 사용할 수 있습니다. 서버에서 서블릿을 통해 파일을 다운로드할 때 편리합니다.

  1. POST와 GET 방법의 차이점은 무엇입니까?

답변 : POST와 GET 방법의 주요 차이점은 POST 방법은 메시지 본문에 응답 매개변수를 전달하는 반면 GET 방법은 URL 문자열에 추가된 응답 매개변수를 전달한다는 것입니다.

  1. 웹 애플리케이션이란 무엇을 의미합니까?

답변 : 웹 애플리케이션은 클라이언트 브라우저에 동적 및 정적 콘텐츠를 제공하기 위해 서버에서 실행되는 모듈입니다. Apache 웹 서버는 PHP를 지원하며 이를 사용하여 웹 애플리케이션을 만들 수 있습니다.

Java는 JSP를 통해 웹 애플리케이션을 지원하고 서블릿 컨테이너에서 실행되는 서블릿은 클라이언트 브라우저에 동적 콘텐츠를 제공합니다.

  1. CGI에 비해 서블릿이 제공하는 이점은 무엇입니까?

답변: CGI 기술에는 많은 단점이 있었습니다. 이를 극복하기 위해 서블릿이 도입되었습니다.

서블릿은 메모리 활용 및 처리 시간 측면에서 CGI보다 더 나은 성능을 제공합니다. 그들은 모든 요청에 ​​대해 새로운 스레드를 생성하여 속도를 크게 향상시키는 멀티스레딩의 이점을 사용합니다. 대조적으로, CGI는 모든 요청에 ​​대해 새로운 객체를 생성하는데, 이는 서블릿의 프로세스보다 상대적으로 느립니다.

서블릿은 시스템 및 플랫폼에 독립적입니다. 표준 웹 컨테이너(Glassfish, Tomcat, JBoss) 및 운영 체제(Unix, Windows, Mac 등)에서 서블릿 기반 웹 애플리케이션을 실행할 수 있습니다.

서블릿에 대한 학습 곡선은 애플리케이션에 대한 비즈니스 로직만 처리하면 되므로 매우 작습니다. 또한 해당 컨테이너가 서블릿의 수명 주기를 처리하므로 메모리 누수, 가비지 수집 및 보안의 위험이 없습니다.

  1. ServletConfig 객체에 대해 무엇을 알고 있습니까?

답변: ServletConfig 객체를 사용하여 특정 서블릿에 구성 정보를 제공합니다. 각 서블릿에는 고유한 ServletConfig 객체가 있으며 서블릿 컨테이너는 이를 인스턴스화합니다. WebInitParam 주석을 통해 서블릿 초기화 매개변수를 제공할 수 있습니다. 서블릿의 ServletConfig 객체를 가져오려면 getServletConfig() 메서드를 사용해야 합니다.

  1. 서블릿 컨테이너는 일반적으로 어떤 작업을 수행합니까?

답변 : 서블릿 컨테이너는 다음 작업을 수행합니다.

  • 서블릿, JSP 및 웹 클라이언트 간의 통신을 용이하게 합니다. 컨테이너 때문에 요청을 수신하고 구문 분석하고 응답을 생성하기 위해 서버 소켓을 구축할 필요가 없습니다. 컨테이너는 이러한 작업을 처리하므로 비즈니스 로직에 집중할 수 있습니다.
  • 서블릿 컨테이너는 서블릿의 수명 주기를 처리합니다. 그것은 서블릿을 메모리에 로드하고, 초기화하고, 필요한 메소드를 호출하고 파괴합니다. 서블릿 컨테이너는 또한 JNDI와 같은 유틸리티를 제공하여 리소스 관리를 단순화합니다.
  • 서블릿 컨테이너는 모든 요청에 ​​대해 새 스레드를 생성하고 서블릿에 요청 및 응답 객체를 제공합니다. 이렇게 하면 모든 요청에 ​​대해 서블릿을 초기화할 필요가 없으므로 많은 메모리와 시간을 절약할 수 있습니다.
  • 서블릿은 JSP를 컴파일하고 이를 서블릿으로 변환하여 서블릿처럼 관리하여 작업을 단순화합니다.
  1. 요청 디스패처는 무엇을 의미합니까?

답변: RequestDispatcher 인터페이스를 사용하여 요청을 다른 리소스로 전달합니다. 이 자원은 애플리케이션, HTML 또는 JSP의 다른 서블릿이 될 수 있습니다. RequestDispatcher 인터페이스를 사용하여 다른 리소스의 콘텐츠를 응답에 추가할 수 있습니다. 서블릿 간 통신을 위한 탁월한 솔루션입니다.

RequestDispatcher 인터페이스에서 두 가지 메소드를 정의할 수 있습니다.

  • 보이드 포워드 방식. 한 서블릿에서 다른 리소스로 요청을 전달합니다.
  • void는 메소드를 포함합니다. 응답에 다른 리소스의 내용을 추가합니다.
  1. ServletContext와 ServletConfig의 차이점은 무엇입니까?

답변: ServletContext는 전체 애플리케이션에 대한 고유한 객체이고 ServletConfig는 서블릿에 대한 고유한 객체입니다. ServletContext를 사용하여 모든 서블릿이 사용할 수 있는 전체 애플리케이션에 초기화 매개변수를 제공할 수 있습니다. 반면에 ServletConfig를 사용하여 특정 서블릿에만 초기화 매개변수를 제공할 수 있습니다.

다른 서블릿이 사용할 수 있는 ServletContext에서 속성을 설정할 수 있지만 ServletConfig에서 속성을 선택할 수는 없습니다.

참고 : 이것은 가장 중요한 서블릿 인터뷰 질문과 답변 중 하나입니다. 신중하게 준비해야 합니다.

  1. 서블릿 속성에 대해 무엇을 알고 있습니까?

답변: 서블릿 속성은 서블릿 간 통신에 도움이 됩니다. 애플리케이션에서 속성을 설정, 가져오기 및 제거할 수 있습니다. 서블릿 속성에는 요청 범위, 세션 범위 및 응용 프로그램 범위의 세 가지 범위가 있습니다. 초기화 매개변수와 다릅니다.

  1. 다른 서블릿에서 서블릿을 어떻게 호출합니까?

답변: RequestDispatcher forward()를 사용하여 요청 처리를 다른 서블릿으로 전달할 수 있습니다. 응답에 다른 서블릿 출력을 추가하려면 RequestDispatcher include() 메서드를 사용할 수 있습니다.

세계 최고의 대학에서 온라인으로 소프트웨어 과정을 배우십시오 . 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.

결론

위의 서블릿 인터뷰 질문과 답변은 인터뷰에서 어떤 종류의 질문을 할 것인지 이해하는 데 도움이 되었을 것입니다. 나중에 다시 방문하여 질문을 여러 번 수정할 수 있도록 이 페이지를 북마크에 추가하는 것이 좋습니다.

인터뷰하는 동안 침착하고 침착함을 유지하십시오. 질문을 주의 깊게 듣고 그에 따라 대답하는 데 도움이 될 것입니다. Java 및 관련 주제에 대한 고급 개념을 자세히 알아보려면 전체 스택 개발을 전문으로 하는 소프트웨어 개발 Executive PG 프로그램을 확인하십시오 .

Java에서 서블릿이란 무엇입니까?

서블릿은 HTTP 서버에서 호출할 수 있는 Java 클래스입니다. 서블릿은 일반적으로 웹 애플리케이션 개발에 사용됩니다. 서블릿의 주요 목적은 HTTP 클라이언트의 요청을 처리하고 적절한 응답을 반환하는 것입니다. 서블릿에는 여러 유형이 있지만 가장 널리 사용되는 것은 동적 웹 콘텐츠를 생성하는 데 사용할 수 있는 JSP(Java Server Pages)입니다.

Java 서블릿의 요청-응답은 어떻게 작동합니까?

서버는 서블릿을 사용하여 사용자의 요청에 응답합니다. 서블릿을 사용하여 데이터베이스에서 정보를 다운로드하거나 전자 메일을 보내거나 정보를 표시할 수 있습니다. 서버에 대한 특정 작업을 수행하는 작은 프로그램입니다. 서블릿은 Java로 작성되고 단일 클래스 파일로 컴파일됩니다. 그런 다음 웹 서버에 배포됩니다. 일단 배포되면 서블릿은 사용자의 요청을 수락할 준비가 됩니다. 요청은 사용자가 링크를 클릭하는 것부터 양식을 작성하는 사용자까지의 모든 것일 수 있습니다. 요청은 적절한 서블릿으로 라우팅되는 서버로 전송됩니다. 그런 다음 서블릿은 요청을 처리하고 응답을 다시 보냅니다. 이 응답은 요청 유형에 따라 다를 수 있습니다. 예를 들어 사용자가 정보를 요청한 경우 서블릿은 해당 정보를 사용자에게 반환할 수 있습니다. 서블릿이 양식 요청에 응답하는 경우 사용자에게 확인 전자 메일을 보내거나 제출에 대한 알림을 보낼 수 있습니다.

서블릿의 수명 주기는 무엇입니까?

서블릿은 수명 주기에 세 단계가 있다고 말할 수 있습니다. 1. 로드 2. 실행 3. 파괴. 로드하는 동안 서블릿은 일부 초기화 매개변수를 수신합니다. 이러한 매개변수는 배치 설명자에서 정의됩니다. 로드가 완료되면 init() 메서드 호출, ajax 호출 또는 수명 주기 이벤트와 같은 여러 가지 방법으로 서블릿 컨테이너에서 서블릿을 호출할 수 있습니다. 다음이자 마지막 단계는 파괴입니다. 즉, 서블릿이 컨테이너에서 제거될 때입니다. 예를 들어 컨테이너가 중지되거나 웹 애플리케이션이 중지될 때와 같이 서블릿 컨테이너에서 서블릿이 제거되는 여러 가지 방법이 있습니다.