JSP란?
- Java Server Page의 약자
- HTML 코드에 Java코드를 넣어 동적웹페이지를 생성하는 웹 애플리케이션 도구
- JSP문서는 백그라운드에서 Servlet으로 자동변환된다.
JSP의 특징
- 스크립트 언어이기 때문에 자바의 기능을 그대로 사용가능하다.
JSP라이프사이클
- 브라우저의 요청이 오면, Servlet클래스가 로딩되어 요청에 대한 Servlet객체 생성
- 서버는 Init()메소드를 호출하여 Servlet을 초기화 한다.
- service()메소드를 호출한 후 Servlet이 브라우저의 요청을 처리하도록 한다.
- service()메소드는 특정 Http요청(GET,POST,...)을 처리하는 메서드(doGet(),doPost()등을 호출
- 서버는 destroy() 메소드를 호출한 후 Servlet을 제거한다.
JSP 실행순서
- 브라우저가 웹서버에 jsp에 대한 요청정보를 전달
- 브라우저가 요청한 jsp가 최초로 요청했을 경우만 jsp로 작성된 코드가 서블릿 코드로 변환
- 서블릿 코드를 컴파일한 후 실행가능한 bytecode로 변환(class파일 생성)
- 서블릿 클래스를 로딩하고 인스턴스 생성
- 서블릿이 실행되어 요청을 처리하고 응답 정보 생성
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로 요청을 재전송한다.
참고 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 |