본문 바로가기
IT/WEB

JSP개념

by 어센트 2020. 5. 12.

JSP란?

  • Java Server Page의 약자
  • HTML 코드에 Java코드를 넣어 동적웹페이지를 생성하는 웹 애플리케이션 도구
  • JSP문서는 백그라운드에서 Servlet으로 자동변환된다.

JSP의 특징

  • 스크립트 언어이기 때문에 자바의 기능을 그대로 사용가능하다.

JSP라이프사이클

  1. 브라우저의 요청이 오면, Servlet클래스가 로딩되어 요청에 대한 Servlet객체 생성
  2. 서버는 Init()메소드를 호출하여 Servlet을 초기화 한다.
  3. service()메소드를 호출한 후 Servlet이 브라우저의 요청을 처리하도록 한다.
  4. service()메소드는 특정 Http요청(GET,POST,...)을 처리하는 메서드(doGet(),doPost()등을 호출
  5. 서버는 destroy() 메소드를 호출한 후 Servlet을 제거한다.

JSP 실행순서

  1. 브라우저가 웹서버에 jsp에 대한 요청정보를 전달
  2. 브라우저가 요청한 jsp가 최초로 요청했을 경우만 jsp로 작성된 코드가 서블릿 코드로 변환
  3. 서블릿 코드를 컴파일한 후 실행가능한 bytecode로 변환(class파일 생성)
  4. 서블릿 클래스를 로딩하고 인스턴스 생성
  5. 서블릿이 실행되어 요청을 처리하고 응답 정보 생성

JSP내장객체

request

클라이언트를 통해 서버에 정보를 요청하는것 요청정보는 request객체가 관리한다.

  • getParameter(name) : name의 이름으로 된 파라미터를 가져온다.
  • getParameterValuse(name) : name의 이름을 가진 모든 파라미터 값을 배열로 가져온다.
  • getContextPath() : JSP 페이지가 속한 웹어플리케이션의 컨텍스트 패스를 리턴한다.
  • getMethod() : 요청방식이 GET 방식인지 POST 방식인지 알려준다.
  • getSession() : 요청관련 session 객체를 구한다.
  • getRequestURL() : 요청 해당 URL을 리턴한다.

response

웹 브라우저(클라이언트)의 요청에 응답하는 것이고 response객체가 관리한다.

  • getCharacterEncoding() : 응답하는 내용의 글자 인코딩 형태를 가져온다.
  • setHeader(headerName, value) : 응답에 포함될 헤더 정보에 headerName의 이름으로 value값을 설정해 추가한다.
  • addHeader(headerName, value) : name 헤더에 value값을 추가한다.
  • addCooke(cookie) : 해당 쿠키를 응답에 추가한다.
  • sendRedirect(URL) : 지정한 URL로 요청을 재전송한다.

img

참고 https://www.edwith.org/boostcourse-web/lecture/19882/

 

[LECTURE] 4) JSP 내장객체 : edwith

들어가기 전에 JSP에서는 개발자가 선언하지 않아도, 사용할 수 있는 미리 선언된 변수가 존재합니다. 이를 내장객체라고 합니다. 개발자가 선언하지 않았음에도 어떻게 JSP에서 내장... - 부스트�

www.edwith.org

 

'IT > WEB' 카테고리의 다른 글

EL(표현 언어) 문법 및 정리  (0) 2020.05.15
Scope 개념 및 실습  (0) 2020.05.13
Ajax통신의 이해  (0) 2020.05.12
Ruby를 활용한 Lotto 번호 예제  (0) 2020.03.01
부스트코스 학습후기: 웹 프로그래밍 01.웹의 동작  (0) 2020.01.19