[JSP] Servlet #1

yenn·2021년 1월 22일
0

JSP

목록 보기
1/8
post-thumbnail

JWA, Java Web Application

JWA : WAS에 설치되어 동작하는 어플리케이션

→ HTML, CSS, 이미지, 자바로 작성된 클래스(Servlet포함 package, interface 등), 각종 설정 파일 등이 포함 됨

자바 웹 어플리케이션 폴더 구조

  • WEB-INF (필수)

    • web.xml : 배포 기술자, 웹앱에 관한 정보를 가지고 있음

      → 3.0미만에선 필수, 3.0 이상에서는 어노테이션을 사용해서 필수 X

    • lib 폴더 : 각종 자료 파일 폴더

    • classes 폴더 : java 패키지, classes 들

  • 각종 폴더, 이미지, 다양한 리소스 들

Servlet 이란?

  • 자바 웹 어플리케이션의 구성요소 중 동적인 처리를 하는 프로그램의 역할

  • WAS에서 동작하는 Java 클래스

  • 서블릿은 HttpServlet 클래스를 상속 받아야 함

  • 서블릿과 JSP로부터 최상의 결과를 얻으려면, 웹 페이지 개발할 때 이 두가지를 조화롭게 사용해야 함

    → 웹페이지 구성하는 HTML은 JSP로 표현, 복잡한 프로그래밍은 서블릿으로 구현

Servlet 작성 방법

  1. 3.0 이상
    • web.xml 파일 사용 X
    • 자바 어노테이션을 사용
  2. 3.0 미만
    • Servlet 등록할 때, web.xml 파일에 등록

3.0 이상에서 작성

1부터 10까지 출력하는 TenServlet 작성

  • HttpServletRequest: request와 관련된 정보들을 가진 객체

  • HttpServletResponse:response와 관련된 정보들을 가진 객체

    → 응답으로 돌려주고 싶은 것이 있으면 이 객체에 넣어줘야함

  • setContentType() : 응답으로 돌려주는 것을 알 수 있도록 알려주는 메서드

    → 이제 응답으로 돌려줄 내용을 넣어주는 통로 생성해줘야 함

  • getWriter(): 응답으로 보낼 내용을 넣어줄 통로 생성, PrintWriter 객체 가져옴

  • @WebServlet("/url") : 어노테이션으로 url 작성

3.0 미만에서 작성

web.xml 이 생성됨

동작 순서

URL 요청이 들어온 것을 url 매핑하여 찾음 → 매핑된 url의 < Servlet-name >을 이용하여 < Servlet >에 실체 같은 < Servlet-name >이 있는지 확인 → 실제 실행시킬 Servlet이 누구인지 class를 찾음

** url 패턴을 변경하고 싶으면, web.xml에서 url 수정하면 됨 → web.xml 수정하면 서버 재시작 해줘야함

profile
Junior BackendEngineer 😎

0개의 댓글