개발/JSP
[JSP] 내장 객체 종류(request, reponse 등), 영역 객체
뉴NEW
2022. 10. 20. 15:56
< 내장 객체 > Implicit Objects
- 객체의 생성없이 바로 사용할 수 있도록 JSP에서 미리 만들어 놓은 객체
- 9개
- 출력, 요청, 응답, 예외처리 ...
< 내장 객체 9가지 >
객 체 | |
request | 웹브라우저의 요청을 처리하는 객체 |
response | 웹브라우저의 요청에 대한 응답을 처리하는 객체 |
session | 웹브라우저의 세션에 관한 처리를 하는 객체 ★ |
application | 웹애플리케이션의 Context 정보를 저장하는 객체 |
pageContext | JSP 페이제에 대한 정보를 저장하는 객체 |
out | JSP 페이지의 출력을 담당하는 객체 |
page | JSP 페이지를 구현하는 자바 클래스의 객체 (사용 X) |
config | JSP 페이지의 설정 정보를 저장하는 객체 (거의 사용 X) |
exception | JSP 페이지의 예외처리를 담당하는 객체 |
- directive의 errorPage, isErrorPage 설정과 함께 사용하는 객체 - 위 2가지 기능을 사용하지 않으므로 exception객체도 사용하지 않는다. |
|
- 자주 사용: request, out, response, session - 가끔 사용: application, pageContext |
< 영역 객체 >
- 웹브라우저의 요청에 대한 처리 영역과 관련된 4가지 내장 객체
- pageContext, request, session, application
- pageContext: 해당 페이지에서 처리되는 영역
- request: 요청에 대한 처리 영역
- session: 세션에 대한 처리 영역
- application: 애플리케이션에 대한 처리 영역
- 영역의 크기: pageContext < request < session < application
< request & response 내장 객체 >
(1) request 내장 객체의 주요 메소드
메소드 | |
★setCharacterEncoding() | 인코딩을 변경하는 메소드 |
★getParameter() | 파라미터로 넘어오는 값 1개를 얻는 메소드 |
- input, select(단수) | |
★getPArameterValues() | 파라미터로 넘어오는 여러 개의 값을 얻는 메소드, 문자열 배열을 사용 |
- input 중에서 checkbox, select(복수) | |
getProtocol() | 사용중인 프로토콜을 알려주는 메소드 |
getServerName() | 서버의 도메인 이름을 알려주는 메소드 |
getMethod() | 요청 방식을 알려주는 메소드 (get, post) |
getRequestURI() | 요청에 사용된 URI을 리턴하는 메소드 |
getRequestURL() | 요청에 사용된 URL을 리턴하는 메소드 |
getContextPath() | 요청에 사용된 컨텍스트 경로를 리턴하는 메소드 |
getRemoteHost() | 웹브라우저의 호스트 이름을 알려주는 메소드 |
getRemoteAddr() | 웹브라우저의 IP 주소를 알려주는 메소드 |
getServerPort() | 서버의 포트번호를 알려주는 메소드 |
getHeader() | 헤더의 속성값을 알려주는 메소드 |
getHeaderNames() | 헤더에 있는 모든 헤더 이름을 리턴하는 메소드 |
★★★
< 접근 경로 4가지 >
1. URL (Uniform Resource Locator): 페이지의 전체 경로, 서버부터 페이지명까지를 모두 포함한 경로
2. URI (Uniform Resource Identifier): 프로젝트명부터 페이지명까지 포함한 경로, 서버는 제외.
3. Context Path: 컨텍스트 경로, 해당 프로젝트명
4. 접근 경로: 프로젝트명을 제외한 폴더명과 페이지명을 포함한 경로
(2) response 내장 객체의 메소드
메소드 | |
setHeader(name, value) | 인코딩을 변경하는 메소드 |
setContentType(type) | 사용중인 프로토콜을 알려주는 메소드 |
setRedirect(url) | 서버의 도메인 이름을 알려주는 메소드 |
* 페이지의 이동 방법 - redirect 방법: 리다이렉팅, 리다이텍트한 페이지로 제어가 이동. url도 변경됨. - forward 방법: 포워딩 포워딩한 페이지로 제어가 이동. url 변경되지 않음 (액션 태그에서 자세히 설명) |
|
addCookie() | 쿠키를 설정하는 메소드 (cookie와 session에서 설명) |