JSP

주빈·2022년 5월 9일
0

server

목록 보기
4/5

📘 JSP란?

  • JAVA 코드가 들어가 있는 HTML 코드이다.
  • Java의 웹서버 프로그램 스펙(서블릿)으로 변환되어 서비스가 된다.

📜 Servlet과 JSP의 차이점

Servlet

  • "웹 서비스 기능을 해주는 자바 클래스" 를 말하는 것으로 자바 소스코드 속에 HTML 코드가 들어가는 형태이다.
    -> HTML 문서를 작성하는데 복잡하고 번거롭다는 단점이 있다.

JSP

  • 복잡한 Servlet을 좀 더 간단히 사용할 수 있다.
  • Servlet과 반대로 HTML 소스코드 속에 자바 소스코드(<% %> or <%= %>)가 들어가는 형태이다.
    -> 컴파일을 통해 클래스 파일로 변환되어 웹 서버(WAS)에서 실행된다.

📜 JSP 동작 구조

✏ Servlet/JSP 동작 순서

  1. 웹 서버가 사용자로부터 서블릿에 대한 요청을 받으면 서블릿 컨테이너에 그 요청을 넘긴다.
  2. 요청을 받은 컨테이너는 HTTPRequest와 HTTPResponse객체를 만들어 서블릿 doPost()나 doGet() 메서드 중 하나를 호출한다.
  3. 클라이언트가 요청에 대한 응답 웹 페이지를 보여줄 때 기존 Servlet에서 출력 객체를 이용해 HTML 문서 작성하던 부분(프레젠테이션 로직)을 JSP로 분리한다.
    -> 데이터의 입력, 수정 등의 대한 제어를 JSP로 넘겨 가독성을 높힌다.
  4. JSP에게 넘겨진 프레젠테이션 로직을 수행한 후 컨테이너에게 Response를 전달한다.
  5. 전달받은 JSP 프레젠테이션 로직 수행 결과와 Servlet이 결합되어 .class 파일이 만들어진다.

📜 JSP 장점

  • 서블릿보다 쉽고 작성하기 빠르다.
  • 디자인 부분(html)과 로직 부분( java)으로 이루어져 있다,
  • 정보, 디자인 부분(html)과 로직 부분( java)을 분리시킬 수도 있다.
  • 프로그래머가 직접 코딩한 서블릿 보다 최적화 된 서블릿으로 생성시켜주므로 효율적인 코드가 만들어진다.
  • 웹 애플리케이션 상에서 변수의 사용 가능한 범위(scope)설정이 쉽다.
profile
누구에게나 필요한 개발자가 꿈

0개의 댓글