Microsoft PowerPoint - aj-lecture3.ppt [호환 모드]

Similar documents
Microsoft PowerPoint - Chap6_cmpl

Microsoft PowerPoint - 웹프로그래밍_ ppt [호환 모드]

중간고사

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

Microsoft PowerPoint - 7강.pptx

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가

JSP 의내장객체 response 객체 - response 객체는 JSP 페이지의실행결과를웹프라우저로돌려줄때사용되는객체이다. - 이객체는주로켄텐츠타입이나문자셋등의데이터의부가정보 ( 헤더정보 ) 나쿠키 ( 다음에설명 ) 등을지정할수있다. - 이객체를사용해서출력의방향을다른

<param-value> 파라미터의값 </param-value> </init-param> </servlet> <servlet-mapping> <url-pattern>/ 매핑문자열 </url-pattern> </servlet-mapping> - 위의예에서 ServletC

Microsoft PowerPoint - 4강.pptx

JAVA Bean & Session - Cookie

<4D F736F F F696E74202D203130C0E52EBFA1B7AF20C3B3B8AE205BC8A3C8AF20B8F0B5E55D>

뇌를 자극하는 JSP & Servlet 슬라이드

2장 변수와 프로시저 작성하기

뇌를 자극하는 JSP & Servlet 슬라이드

Microsoft PowerPoint 웹 연동 기술.pptx

게시판 스팸 실시간 차단 시스템

뇌를 자극하는 JSP & Servlet 슬라이드

Data Provisioning Services for mobile clients

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

Microsoft PowerPoint - 03-TCP Programming.ppt

Secure Programming Lecture1 : Introduction

0. 들어가기 전

PowerPoint Presentation

Microsoft PowerPoint - web-part03-ch20-XMLHttpRequest기본.pptx

Microsoft Word - src.doc

PowerPoint 프레젠테이션

The Pocket Guide to TCP/IP Sockets: C Version

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

Microsoft PowerPoint - CSharp-10-예외처리

04장

PowerPoint Template

Microsoft PowerPoint - aj-lecture6.ppt [호환 모드]

Microsoft PowerPoint - aj-lecture7.ppt [호환 모드]

Java Agent Plugin Guide

서블릿의라이프사이클 뇌를자극하는 JSP & Servlet

<4D F736F F F696E74202D20B5A5C0CCC5CDBAA3C0CCBDBA5F3130C1D6C2F75F32C2F7BDC32E >

Research & Technique Apache Tomcat RCE 취약점 (CVE ) 취약점개요 지난 4월 15일전세계적으로가장많이사용되는웹애플리케이션서버인 Apache Tomcat에서 RCE 취약점이공개되었다. CVE 취약점은 W

로거 자료실

(Microsoft PowerPoint - java1-lecture11.ppt [\310\243\310\257 \270\360\265\345])

JVM 메모리구조

PowerPoint Presentation

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Microsoft PowerPoint - aj-lecture1.ppt [호환 모드]

<C4FBC1EEB7CE20C1A4B8AEC7D5BDC3B4D95FC1A4B4E42E687770>

PowerPoint Presentation

chapter3.doc

C++ Programming

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

A Hierarchical Approach to Interactive Motion Editing for Human-like Figures

PowerPoint Presentation

2009년 상반기 사업계획

14-Servlet

Microsoft PowerPoint 세션.ppt

Microsoft PowerPoint - 04-UDP Programming.ppt

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

본 강의에 들어가기 전

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx

Microsoft PowerPoint - C++ 5 .pptx

뇌를 자극하는 JSP & Servlet 슬라이드

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

2장 변수와 프로시저 작성하기

슬라이드 1

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

KYO_SCCD.PDF

뇌를 자극하는 JSP & Servlet 슬라이드

PowerPoint 프레젠테이션

PowerPoint Presentation

쉽게 풀어쓴 C 프로그래밍

chapter6.doc

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp

Microsoft PowerPoint - web-part01-ch10-문서객체모델.pptx

XSS Attack - Real-World XSS Attacks, Chaining XSS and Other Attacks, Payloads for XSS Attacks

TCP/IP Model

WAS 의동작과 WEB, Servlet, JSP 엑셈컨설팅본부 /APM 박종현 웹어플리케이션서버란? 웹어플리케이션서버방식은웹서버가직접어플리케이션프로그램을처리하는것이아니라웹어플리케이션서버에게처리를넘겨주고어플리케이션서버가어플리케이션프로그램을처리한다. 여러명의사용자가동일한페

유니티 변수-함수.key

Microsoft PowerPoint - aj-lecture9.ppt [호환 모드]

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조


SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES HTML 연동가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax Co

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

쉽게 풀어쓴 C 프로그래밍

17장 클래스와 메소드

PowerPoint 프레젠테이션

Windows 8에서 BioStar 1 설치하기

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

<4D F736F F F696E74202D20C1A63234C0E520C0D4C3E2B7C228B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

PowerPoint 프레젠테이션

PowerPoint Presentation

Microsoft PowerPoint - chap06-1Array.ppt

Microsoft PowerPoint - Java7.pptx

12. OAuth 2.0 으로사용자관리하기 12.1 들어가며 대부분의회사나조직은직원과고객데이터베이스를가지고있습니다. 쓰리래빗츠를도입하면 일부데이터베이스를이중으로관리해야하는불편함에직면합니다. 이문제를해결하기위해서 쓰리래빗츠는 OAuth 2.0 으로사용자를관리하는기능을제공

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 :

[Brochure] KOR_TunA

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

쉽게

금오공대 컴퓨터공학전공 강의자료

C# Programming Guide - Types

Web Service Computing

adfasdfasfdasfasfadf

Transcription:

JSP 내장객체 JSP 내장객체 524730-1 2019 년봄학기 3/25/2019 박경신 내장객체 (Implicit Objects) JSP 페이지에서사용할수있도록 JSP 컨테이너에미리정의된객체 JSP 페이지가서블릿프로그램으로번역될때 JSP 컨테이너가자동으로내장객체를멤버변수, 매개변수등의각종참조변수 ( 객체 ) 로포함 JSP 페이지에별도의 import 문없이자유롭게사용가능 스크립틀릿태그나표현문태그에선언을하거나객체를생성하지않고도직접호출하여사용가능 request, response, out, session, application, config, pagecontext, page, exception JSP 내장객체 내장객체 (Implicit Objects) 주요활용 HTML 폼에서입력한값을가지고올때 세션관련작업을처리할때 스크립트릿에서브라우저출력이필요할때 사용자요청을다른페이지로전달할때 현재 JSP에대한각종정보를알고자할때 내장객체 기본객체실제타입 request javax.servlet.http.httpservletrequ est 웹브라우저의 HTTP 요청정보를저장 response javax.servlet.http.httpservletresp onse 웹브라우저의 HTTP 요청에대한응답정보를저장 pagecontext javax.servlet.jsp.pagecontext JSP 페이지에대한정보를저장 session javax.servlet.http.httpsession 웹브라우저의정보를유지하기위한세션정보를저장 application javax.servlet.servletcontext 웹애플리케이션의콘텍스트정보를저장 out javax.servlet.jsp.jspwriter JSP 페이지에출력할내용을담고있는출력스트림 config javax.servlet.servletconfig 현재 JSP 페이지의설정정보를저장 page java.lang.object JSP 페이지를구현한자바클래스인스턴스 exception java.lang.throwable 예외객체. 에러페이지에서사용

내장객체와영역 PAGE - 하나의 JSP 페이지를처리할때사용되는영역 REQUEST - 하나의 HTTP 요청을처리할때사용되는영역 SESSION - 하나의웹브라우저와관련된영역 APPLICATION - 하나의웹어플리케이션과관련된영역 내장객체속성처리 request, session, application, pagecontext 는속성기능제공 속성처리 setattribute(name, value) getattribute(name) removeattribute(name) getattributenames() 해당내장객체의속성이름이 name 인속성값을 value 로저장 해당내장객체의속성이름이 name 인속성값을거져옴 해당내장객체의속성이름이 name 인속성을삭제 해당내장객체의모든속성이름을 java.util.enumeration 형태로가져옴 ( 단, pagecontext 내장객체는이를제공하지않음 ) 내장객체속성의활용 내장객체 영역 사용법 pagecontext PAGE ( 한번의요청을처리하는 ) 하나의 JSP 페 이지내에서공유될값을저장 request REQUEST 한번의요청을처리하는데사용되는모 든 JSP 페이지에서공유될값을저장 session SESSION 한사용자와관련된정보를 JSP 들이공 유하기위해서사용 application APPLICATION 모든사용자와관련해서공유할정보를 저장 request 내장객체 request (javax.servlet.http.httpservletrequest) JSP 페이지에서가장많이사용되는기본내장객체 사용자요청 (request) 과관련된정보를처리할때사용 웹브라우저에서서버의 JSP 페이지로전달하는정보를저장 폼페이지로부터입력된데이터를전달하는요청파라미터값을 JSP 페이지로가져옴 ( 주로 HTML Form 요소선택값과같은사용자입력정보를읽어올때사용 ) JSP 컨테이너는웹브라우저에서서버로전달되는정보를처리하기위해 javax.servlet.http.httpservletrequest 객체타입의 request 내장객체를사용하여사용자의요구사항을얻어냄

request 내장객체 getparameterxxxx 메서드 요청파라미터는사용자가폼페이지에데이터를입력한후서버에전송할때전달되는폼페이지의입력된정보형태를말함 요청파라미터는 <name=value> 형식으로웹브라우저에서서버의 JSP 페이지로전송 getparameternames() getparameter(name) getparametervalues(name) getparametermap() 현재요청에포함된인수이름을 Enumeration 형태로전달문자열name과같은이름을가진인수값을가져옴문자열 name과같은이름을가진인수값을배열형태로가져옴. checkbox, multiple list 등에주로사용모든요청된인수와값을 java.util.map 객체타입으로전달 request 내장객체 요청 HTTP 헤더관련메서드 웹브라우저는 HTTP 헤더에부가적인정보를담아서버로전송 getheader(name) getheaders(name) getheadernames() getintheader(name) getdateheader(name) getcookies() 설정한 name의헤더값을가져옴설정한 name의헤더목록값을가져옴모든헤더이름을가져옴설정한 name의헤더값을정수로가져옴설정한 name의헤더값을시간값으로가져옴모든쿠키값을 javax.servlet.http.cookie의배열형태로가져옴 request 내장객체 웹브라우저 / 서버관련 getremoteaddr() getmethod() getsession() getprotocol() getrequesturi() getcontenttype() getcontentlength() getquerystring() getcharacterencoding() setcharacterencoding() 웹브라우저 IP 주소를알려줌 현재요청이 GET, POST 인지가져옴 현재세션객체를가져옴 현재서버의프로토콜을문자열형태로알려줌 웹브라우저가요청한 URI 경로를가져옴 웹브라우저의콘텐츠유형을가져옴 웹브라우저의요청파라미터길이를가져옴 웹브라우저의전체요청파라미터문자열 (? 다음 URL 에할당된문자열 ) 을가져옴 웹브라우저의문자인코딩을가져옴현재 jsp 로전달되는내용을지정한캐릭터셋으로변환. html form에서한글입력시정상적으로처리하려면반드시필요 response 내장객체 response (javax.servlet.http.httpservletresponse) 사용자의요청을처리한결과를서버에서웹브라우저로전달하는정보를저장하고서버는응답헤더와요청처리결과데이터를웹브라우저로보냄 JSP 컨테이너는서버에서웹브라우저로응답하는정보를처리하기위해 javax.servlet.http.httpservletresponse 객체타입의 response 내장객체를사용하여사용자의요청에응답

response 내장객체 페이지이동관련 페이지이동 = 리다이렉션 (redirection) 사용자가새로운페이지를요청할때와같이페이지를강제로이동하는것 서버는웹브라우저에다른페이지로강제이동하도록 response 내장객체의리다이렉션를제공 페이지이동시에는문자인코딩을알맞게설정해야함 sendredirect(url) 설정한 URL 페이지로강제이동 response 내장객체 응답 HTTP 헤더관련메서드 응답 HTTP 헤더관련는서버가웹브라우저에응답하는 정보에헤더를추가하는기능을제공 헤더정보에는주로서버에대한정보가저장되어있음 getheader(name) 헤더이름 name 값을가져옴 containsheader(name) 헤더이름 name이 HTTP 헤더에포함되었는지 여부를확인 setheader(name, value) 헤더이름 name에 String값 value를설정 setintheader(name, value) 헤더이름 name에정수값 value를설정 setdateheader(name, date) 헤더이름 name에날짜 / 시간 date을설정 addheader(name, value) 헤더이름 name에 String값 value를추가 addintheader(name, value) 헤더이름 name에정수값 value를추가 adddateheader(name, date) 헤더이름 name에날짜 / 시간 date을추가 addcookie(cookie) 쿠키를추가 response 내장객체 응답콘텐츠관련 response 내장객체는웹브라우저로응답하기위해 MIME 유형, 문자인코딩, 오류메시지, 상태코드등을설정하고가져오는응답콘텐츠관련를제공 setcontenttype(type) 웹브라우저에응답할 MIME 유형을설정 getcontenttype() 웹브라우저에응답할 MIME 유형을가져옴 setcharacterencoding(charset) 웹브라우저에응답할문자인코딩을설정 getcharacterencoding() 웹브라우저에응답할문자인코딩을가져옴 senderror(statuscode, msg) 웹브라우저에응답할오류 ( 코드및오류메시지 ) 를설정해서보냄 setstatus(statuscode) 웹브라우저에응답할 HTTP 코드를설정 out 내장객체 out (javax.servlet.jsp.jspwriter) 웹브라우저에데이터를전송하는출력스트림객체 JSP 컨테이너는 JSP 페이지에사용되는모든표현문태그와 HTML, 일반텍스트등을 out 내장객체를통해웹브라우저에그대로전달 스크립틀릿태그에사용하여단순히값을출력하는표현문태그 (<%= %>) 와같은결과를얻을수있음 복잡한 if-else 사용시 out 기본객체사용하면편리 <% if (grade > 10) { out.println(gradestringa); } else if (grade > 5) { out.println(gradestringb); } %>

out 내장객체 출력및버퍼관련 out 메서드 print(str) 설정된 str 값을웹브라우저에출력 println(str) 설정된 str 값을웹브라우저에줄바꿈과함께출력 newline() 줄바꿈 (\r\n 또는 \n) 을출력 getbuffersize() 현재출력버퍼의크기를가져옴 getremaining() 현재남아있는출력버퍼의크기를가져옴 clear() 현재출력버퍼에저장되어있는내용을웹브라우저에전송하지 않고비움. 만약버퍼가이미플러시되었다면 IOException 발생 clearbuffer() 현재출력버퍼에저장되어있는내용을웹브라우저에전송하지 않고비움. 만약버퍼가이미플러시되었다면 IOException 발생안함 flush() 현재출력버퍼에저장되어있는내용을웹브라우저에전송하고 비움 isautoflush() 출력버퍼가채워졌을때의처리를결정. 자동으로플러시하는경 우 true 반환, 그렇치않은경우 false 반환 session 내장객체 session (javax.servlet.http.httpsession) 클라이언트와의지속적인연결유지를위한세션처리 세션은하나의애플리케이션내에서만유효함 두개의서로다른애플리케이션에서는쿠키를사용해야함 세션은단순한쿠키대용이아님 session 내장객체 config 내장객체 session 메서드 getid( ) getcreatingtime( ) getlastaccessedtime( ) getmaxinactiveinterval( ) setmaxinactiveinterval(t) invalidate( ) getattribute(attr) setattribute(name,attr) 각접속에대한세션고유의 ID를문자열형태로반환세션이생성된시간을 January 1, 1970 GMT. 부터 long형밀리세컨트값으로반환현재세션으로마지막작업한시간을 long형밀리세컨드값으로반환세션유지시간을초로반환세션유효시간을줌세션유효시간을 t에설정된초값으로설정현재세션을종료. 세션과관련한값을모두지움문자열 attr로설정된세션값을 java.lang.object 형태로반환문자열 name으로 java.lang.object attr을설정 config (javax.servlet.http.servletconfig) 애플리케이션에서공유할수있는초기화변수접근 web.xml 에초기화패러미터가설정되어야함. 애플리케이션의 ServetContext객체를가져옴.

config 내장객체 config 메서드 getinitparameternames( ) getinitparameter(name) getservletcontext( ) 초기파라미터값의설정이름을 Enumeration 객체로반환문자열 name에해당하는초기화파라미터값을반환현재애플리케이션의 ServetContext 객체를반환내장객체인 application과동일한객체참조 application (javax.servlet.http.servletcontext) 웹애플리케이션 ( 컨텍스트 ) 에관련된정보를제공 개발자를위한서버정보 서버의각종자원정보 로그관련정보 application scope의속성관련정보 개발자를위한서버관련정보 application 메서드 서버자원정보 application 메서드 getserverinfo( ) getmajorversion( ) getminorversion( ) JSP/ 서블릿컨테이너이름과버전반환컨테이너가지원하는서블릿 API의 Major 버전정보반환컨테이너가지원하는서블릿 API의 Minor 버전정보반환 getmimetype(filename) 문자열 filename에지정된파일에대한 MIME type을반환 getresource(path) 문자열 path에지정된자원을 URL 객체로반환 getresourceasstream( 문자열 path에지정된자원을 InputStream 객체로반환 path) getrealpath(path) 문자열 path에지정된자원을파일시스템의실제경로로반환 getcontext(path) 문자열 path에지정된자원의컨텍스트정보를반환 getresourcedispatcher (path) 문자열 path 에지정된자원을위한 request dispatcher 를생성

표로그관련 application 메서드 속성관련 application 메서드 log(message) 문자열 message 내용을로그파일에기록로그파일위치는컨테이너에따라다름 getattribute(string name) 문자열 name 에해당하는속성값이있다면 Object 형태로가져옴. 반환값에대한적절한형변환이필요 log(message,excepti on) 예외상황과관련한정보를포함하여로그파일에기록 getattributenames( ) 현재 application 객체에저장된속성이름을 Enumeration 형태로가져옴 setattribyte (String name, Object value) 문자열 name 이름으로 Object 형데이터를저장 Object 형이므로자바클래스형태로도저장가능 removeattribute(string name) 문자열 name 에해당하는속성을삭제 page 내장객체 page (javax.servlet.jsp.pagecontext) JSP 파일에서자기자신을참조할때사용함. <%@page language=java...%> 인경우크게의미는없음. pagecontext 내장객체 pagecontext (javax.servlet.jsp.pagecontext) include, forward 액션의실제구현에응용됨. 내장객체에대한프로그램적인접근방법제공 <%@page language=java...%> 인경우크게의미는없음. <jsp:forward page= HelloWorld.jsp /> <% out.flush(); pagecontext.include( HelloWorld.jsp ); %>

exception 내장객체 exception (java.lang.throwable) page 지시어에 iserrorpage= true 로지정된에러페이지에서사용 현재호출된에러정보제공 속성관련 exception getmessage( ) printstacktrace( ) tostring( ) 문자열로된에러메시지를반환표준출력스트림으로스택추적정보를출력예외클래스이름과함께에러메시지를반환