Presentation is loading. Please wait.

Presentation is loading. Please wait.

JSP Programming with a Workbook

Similar presentations


Presentation on theme: "JSP Programming with a Workbook"— Presentation transcript:

1 JSP Programming with a Workbook
내장 객체 (1)

2 학습 목표 내부 객체(implicit object)에 대하여 알아보자. request 객체에 대하여 알아보자.
response 객체에 대하여 알아보자. out 객체에 대하여 알아보자. JSP Programming with a Workbook

3 내장 객체 JSP Programming with a Workbook 실제 타입 기본 객체 설명
request javax.servlet.http.HttpServletRequest 클라이언트 요청 정보 저장 response javax.servlet.http.HttpServletResponse 응답 정보 저장 out javax.servlet.jsp.JspWriter 결과 출력 pageContext javax.servlet.jsp.PageContext 페이지 정보 저장 application javax.servlet.ServletContext 웹 어플리케이션 정보 저장 session javax.servlet.http.HttpSession HTTP 세션 정보 저장 config javax.servlet.ServletConfig 페이지 설정 정보 저장 page java.lang.Object 페이지를 구현한 자바 클래스 인스턴스 exception java.lang.Throwable 예외 객체 JSP Programming with a Workbook

4 request 객체 [1/5] request 객체
클라이언트가 어떤 페이지를 요청했을 경우 서버로 해당 정보를 전송하는데 이렇게 전송된 데이터가 저장되는 곳 형식 request.메소드(변수); 예제 request.getCharacterEncoding(); request.getParameter("strID"); JSP Programming with a Workbook

5 getCharacterEncoding()
request 객체 [2/5] HTTP 프로토콜 관련 메소드 (코드 3-1 참고) 객체를 지원하는 웹 브라우저 및 클라이언트가 전송한 정보, 서버 정보들을 볼 수 있는 메소드 메소드 설명 getCharacterEncoding() 클라이언트가 요청 정보 전송 시 사용한 인코딩 리턴 getContentLength() 클라이언트가 전송한 요청 정보의 길이 리턴 getContentType() 클라이언트가 요청 정보 전송 시 사용한 컨텐트 타입 리턴 getContextPath() 페이지가 속한 웹 어플리케이션의 콘텍스트 경로 리턴 getMethod() 웹 브라우저가 정보를 전송할 때 사용한 방식 리턴 getProtocol() 클라이언트가 요청한 프로토콜 리턴 getRemoteAddr() 웹 서버에 연결한 IP 주소 리턴 getRequestURL() 웹 브라우저가 요청한 URL 경로 리턴 getServerName() 연결할 때 사용한 서버이름 리턴 getServerProt() 실행 중인 포트 번호 리턴 JSP Programming with a Workbook

6 getParameter(String name)
request 객체 [3/5] 파라미터 관련 메소드 (코드 3-2 ~ 코드 3-8 참고) 웹 브라우저가 전송한 파라미터를 읽어옴 메소드 설명 getParameter(String name) name이란 이름의 파라미터 값 리턴 getParameterValues (String name) name이란 이름의 파라미터 값 배열로 리턴 getParameterNames() 웹 브라우저가 전송한 파라미터 값 리턴 getParameterMap() 웹 브라우저가 전송한 파라미터 맵 리턴 JSP Programming with a Workbook

7 request 객체 [4/5] 서버로 데이터를 전달하는 방법 get post
웹 브라우저의 URL창에 파라미터의 정보를 담아서 전송하는 방식 보안에 취약하며 정보의 크기가 1024로 제한됨 post 정보의 크기에 제한 없이 전송 가능 URL 주소창에 전송하려는 데이터의 정보가 없으므로 보안성에 좋음 JSP Programming with a Workbook

8 request 객체 [5/5] 헤더 관련 메소드 헤더의 정보를 읽어 올 수 있음 메소드 설명
getHeader(String name) name이란 이름의 헤더 값 리턴 getHeaders(String name) name이란 이름의 헤더 목록 리턴 getHeaderNames() 모든 헤더 이름 리턴 getIntHeader(String name) name이란 이름의 헤더 값 정수로 리턴 getDateHeader (String name) name이란 이름의 헤더 값 시간 값으로 리턴 JSP Programming with a Workbook

9 response 객체 [1/6] response 객체 사용자가 어떤 요청을 했을 경우 이에 대한 응답을 보내기 위해 사용
메소드 종류 (page. 85 테이블 참고) 형식 response.메소드(변수); 예제 response.sendRedirect(" response.setStatus(response.SC_NOT_FOUND); JSP Programming with a Workbook

10 response 객체 [2/6] addHeader() 메소드 containHeader() 메소드
헤더에 값을 추가 시키고 싶을 경우 사용 containHeader() 메소드 특정한 헤더 이름이 있는지를 확인하는 메소드 sendRedirect() 메소드 (코드 3-9 ~ 코드 3-10 참고) 웹페이지 대신 지정한 URL로 이동 형식 response.sendRedirect(URL); 예제 response.sendRedirect(" response.sendRedirect("Form.htm"); JSP Programming with a Workbook

11 response 객체 [3/6] setStatus() 메소드, sendError() 메소드
(코드 3-11 ~ 코드 3-12 참고) 응답에 상태 코드를 전송하는 역할 상태코드와 메시지 (page. 90 테이블 참고) 형식 response.setStatus([response.필드 | 코드]); 예제 response.setStatus(response.SC_FORBIDDEN); response.setStatus(404); 형식 response.sendError([response.필드 | 코드]); 예제 response.sendError(response.SC_FORBIDDEN); response.sendError(404); JSP Programming with a Workbook

12 response 객체 [4/6] setBufferSize() 메소드 getBufferSize() 메소드 버퍼의 크기 설정
버퍼의 크기 리턴 형식 response.setBufferSize (크기); 예제 response.setBufferSize (3200); 형식 response.getBufferSize (크기); 예제 response.getBufferSize (3200); JSP Programming with a Workbook

13 response 객체 [5/6] setContentType() 메소드 HTTP 콘텐츠 형식 지정 기본값 : text/html
예제 response.ContentType("image/GIF); response.ContentType(image/JPEG) JSP Programming with a Workbook

14 response 객체 [6/6] encodeURL() 메소드 , encodeRedirectURL() 메소드
(코드 3-13 참고) 브라우저가 쿠키를 지원하거나 세션을 유지하지 않은 상태에서 파라미터로 넘겨진 원래 문자열을 그대로 리턴하는 역할 형식 response.encodeURL(세션ID 및 URL); 예제 response.encodeURL("response_5.jsp?strID=apple&strPwd=apple") 형식 response.encodeRedirecURL(세션ID 및 URL); 예제 response.encodeRedirectURL("response_5.jsp?strID=apple&strPwd=apple") JSP Programming with a Workbook

15 out 객체 [1/3] out 객체 JSP 페이지가 생성하는 내용을 모두 전달 받음 형식 out.메소드(변수); 예제
out.println("strValue"); out.clear(); JSP Programming with a Workbook

16 out 객체 [2/3] print() 메소드, println() 메소드 (코드 3-14 참고)
JSP 페이지에서 생성한 내용을 전달받아 출력하는 역할 메소드 설명 print(content) 데이터 출력 println(content) 데이터 출력 후 ,\r\n 또는 \n 출력 newLine() \r\n 또는 \n 출력 JSP Programming with a Workbook

17 out 객체 [3/3] 버퍼 관련 메소드 (코드 3-15 ~ 코드 3-16 참고)
JSP에서 사용하고 있는 버퍼는 실제로 out 객체에서 내부적으로 사용하고 있는 버퍼이므로 이와 관련된 메소드를 제공 메서드 설명 getBufferSize() 버퍼 크기 리턴 getRemaining() 현재 버퍼 크기 리턴 clearBuffer() 버퍼 내용을 비움 clear() close() 버퍼의 내용을 플러쉬 하고 스트림을 닫음 flush() 버퍼 플러쉬 isAutoFlush() 버퍼가 다 찼을 경우 자동으로 플러시하고 true 리턴 JSP Programming with a Workbook

18 학습 정리 [1/2] 클라이언트가 어떤 페이지를 요청하면 서버로 해당 정보를 전송하는데, 이렇게 전송된 데이터 가 저장되는 곳이 바로 request 객체이다. 그리고 사용자가 어떤 요청을 했을 때 서버가 이에 응답을 보내려고 사용하는 것이 response 객체이다. 서버로 전달하는 방법은 get, post 두 가지 방식이 있다. get 방식은 웹 브라우저의 URL창에 파라미터의 정보를 담아서 전송하는 방식을 말한다. 즉 URL의 이름을 사용해 정보를 전달하는 것이다. 하지만 이 방식은 URL창에 정보가 보이므로 보안에 취약하며 정보의 크기가 1024바이트로 한정이 된다. post 방식은 정보의 크기에 제한 없이 전송할 수 있다. 그리고 URL 주소창에 전송하려는 데이터의 정보가 보이지 않으므로 보안성에서도 좋다. JSP Programming with a Workbook

19 학습정리 [2/2] request 객체는 지원하는 웹 브라우저 및 클라이언트가 전송한 정보, 서버 정보들을 볼 수 있는 HTTP 프로토콜 관련 메소드, 파라미터 관련 메소드, 헤더관련 메소드 등을 지원한다. 일반적으로 사용자가 서버에 웹페이지를 요청하면 일반적으로 해당 웹페이지를 전송한다. 하지만 response 객체의 sendRedirect() 메소드를 사용하면 웹페이지 대신 프로그래머가 지정한 URL로 이동시킬 수 있다. JSP 페이지가 생성하는 모든 내용은 out 객체를 통해 전송하게 된다. 그러므로 out 객체를 사용해 문자열이나 변수의 값을 출력시킬 수 있다. 그리고 JSP에서 사용하고 있는 버퍼는 실제로 out 객체에서 내부적으로 사용하고 있는 버퍼이므로 이와 관련된 메소드들도 제공하고 있다. JSP Programming with a Workbook

20 연습 문제 및 Workbook 연습문제 1 ~ 4 실전 연습문제 실무 프로젝트
1단계 실습 : HTML을 사용하여 회원 가입 페이지를 만들어 보자. 2단계 실습 : 방문자의 방문 횟수와 마지막 방문 시간을 출력하는 웹페이지를 만들어 보자. 실무 프로젝트 과제 1 : 회원 가입 페이지를 만들어 보자. 과제 2 : 지정한 아이디로 로그인 했을 때에 특정 홈페이지로 이동하는 페이지를 만들어 보자. JSP Programming with a Workbook


Download ppt "JSP Programming with a Workbook"

Similar presentations


Ads by Google