본문 바로가기
개발/자바

서블릿(Servlet), 웹 컨테이너

by kakk789 2022. 5. 17.

웹 컨테이너

  • 웹컨테이너는 서블릿의 생명주기를 관리하고 URL과 특정 서블릿을 매핑하여 URL 요청이 올바르게 접근할 수 있도록 권한을 보장함
  • 사용자의 요청과 매핑된 서블릿을 찾아 컨테이너에 존재하는지 확인 후 컨테이너에 존재하면 그대로 사용하고 존재하지 않으면 생성(init) 후 가져다 사용하는 역할을 함.
  • 생명주기 : 서블릿을 생성하고, 필요한 순간에 호출/소멸 시킴

Servlet (서블릿)

  • Java에서 HTML을 표현하는 프로그래밍
  • HttpServlet 상속 필요
  • 사용자 요청들을 서버 측에 클래스로 만들어둬야함
  • jsp를 요청하면 내부적으로 서블릿을 생성함

서블릿에서 HTML 생성하는 명령어 (response.getWriter())

기본 세팅

response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.print("<html태그들>");
		PrintWriter out = response.getWriter(); 
		out.print("<html>");
		out.print("<head></head>");
		out.print("<body>");
		out.print("<h2>게시물 목록</h2>");
		out.print("</body>");
		out.print("</html>");

필수 오버로딩 함수 / 어노테이션

  • doGet()
  • doPost()
  • @WebServlet ("요청할 서블릿 이름")
    - '서블릿 명' 과 '클래스 명' 은 굳이 같을 필요는 없음.
    - form 의 action에 넣을 값과 어노테이션(@xxxxxx)의 값은 같아야함!
@WebServlet("/서블릿명")
public class 서블릿명 extends HttpServlet {
	protected void doGet
		(HttpServletRequest request, HttpServletResponse response) 
		throws ServletException, IOException {
		response.getWriter().append("Served at: ").append(request.getContextPath());
	}

	protected void doPost
		(HttpServletRequest request, HttpServletResponse response) 
		throws ServletException, IOException {
		doGet(request, response);
	}
}

서블릿 삭제 경로

C:\jspStudy\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\day0516\org\apache\jsp

 

참고자료

서블릿 설명 : https://www.youtube.com/watch?v=calGCwG_B4Y

반응형

댓글