728x90
반응형
서블릿이란
Dynamic Web Page를 만들 때 사용되는 자바 기반의 웹 애플리케이션 프로그래밍 기술로, 웹 요청과 응답의 흐름을 간단한 메서드 호출만으로 체계적으로 다룰 수 있게 해준다.
@WebServlet(name = "helloServlet", value = "/hello-servlet")
public class HelloServlet extends HttpServlet {
private String message;
public void init() {
message = "Hello World!";
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType("text/html");
// Hello
PrintWriter out = response.getWriter();
out.println("<html><body>");
out.println("<h1>" + message + "</h1>");
out.println("</body></html>");
}
public void destroy() {
}
init()
서블릿이 처음으로 요청될 때 초기화를 하는 메서드
클래스를 new 해서 사용하듯 서블릿 클래스도 초기화해주어야 사용이 가능하다. 이렇게 초기화된 서블릿은 싱글톤으로 관리되어 다음에 한번 더 해당 서블릿 클래스를 호출하면 초기화가 다시 일어나는 것이 아니라 기존에 있던 서블릿 클래스를 호출한다.
service()
서블릿 컨테이너가 요청을 받고 응답을 내려줄 때 필요한 서블릿의 service 메서드
Servlet interface를 구현한 HttpServlet 클래스의 doGet, doPost 같은 메서드들이 호출된다.
destroy()
더 이상 사용되지 않는 서블릿 클래스는 주기적으로 서블릿 컨테이너가 destory() 메서드를 호출하여 제거한다.
service 메서드들에 해당하는 모든 스레드들이 종료되거나 사용시간이 오래되어 타임아웃된 경우에는 이 클래스를 다시 사용하기 위해서는 init()을 다시 해주어야 한다.
반응형
'개발_기초 정보' 카테고리의 다른 글
[spring] 스프링 빈 조회 할 때 빈이 2개 여러 개 일 경우 (0) | 2023.02.21 |
---|---|
[mybatis-spring] mapper 세팅하기 (0) | 2023.02.21 |
[web] 정보 전달을 위한 GET 방식과 POST 방식 (0) | 2023.02.17 |
[web] http vs https (0) | 2023.02.17 |
[spring security] 환경 설정하기 (0) | 2023.02.15 |