Presentation is loading. Please wait.

Presentation is loading. Please wait.

5. JSP의 내장객체1.

Similar presentations


Presentation on theme: "5. JSP의 내장객체1."— Presentation transcript:

1 5. JSP의 내장객체1

2 객체와 내장객체 웹서버 & DB서버 Request Response [인증요청] [성공여부] 사용자[ID,PASSWORD]
이 값을 가져가게 되는데 이 부분이 객체이다. 또한 웹서버는 요청에 대한 결과를 사용자에게 보여주는데 이것도 역시 객체이다. JSP에서는 기본적으로 9개의 객체를 자동으로 생성하고 프로그래머들이 가져다 쓰도록 하고있다. 이를 JSP컨테이너에 내장시켰다하여 내장객체(Implicit Object)라 부른다. JSP(JavaServerPages)

3 JSP 내장객체 JSP의 9개의 내장객체 내장객체 주요역할 상속되는클래스 1 2 3 4 5 6 7 8 9 Request
사용자의 요청처리 Javax.servlet.http.HttpServletRequest 2 Response 처리결과응답 Javax.servlet.http.HttpServletResponse 3 pageContext Context정보를 담는다. Javax.servlet.jsp.PageContext 4 Session 사용자별 세션정보처리 Javax.servlet.http.HttpSession 5 Appication 웹서버의 어플리케이션처리 Javax.servlet.ServletContext 6 Out 사용자에게 output스트림 처리 Javax.servlet.jsp.JspWriter 7 Exception 예상치못한 오류처리 Javax.lang.Throwable 8 Page 현페이지의 정보를 담고 처리 Javax.servlet.jsp.HttpJspPage 9 config 해당페이지의 초기화환경처리 Javax.servlet.ServletConfig JSP(JavaServerPages)

4 request 객체 & response 객체 1
회원로그인예제 (ID : admin , Password:0000) 회원로그인폼소스[FirstLogin.html] 회원로그인인증소스[FirstLogin_ok.jsp] document.login.action="./FirstLogin_ok.jsp"; document.login.submit(); <% String id = request.getParameter("id"); String pwd = request.getParameter("pwd"); if (id.equals("admin") && pwd.equals("0000")){ %> <hr> <center> 로그인 정보<br> I D : <%=id%><br> 패스워드: <%=pwd%><br> 로그인이 성공적으로 이루어졌습니다. </center> } else{ response.sendRedirect("FirstLogin_fail.html"); - 자바스크립트부분 - 이름이 없거나 패스워드가 없다면 메시지를 보낸다. 무사히 통과된다면 FirstLogin.jsp 로 이동을 한다.. request객체는 getParameter라는 메소드와 Id 와 pwd 라는 데이터를 가지고 그 값을 프로그램내의 값으로 리턴한다. JSP(JavaServerPages)

5 FirstLogin.html <html> <head>
<title>첫번째 로그인 예제</title> <script language="JavaScript"> <!-- function confirmation(){ if(document.login.id.value==''){ alert("ID를 입력해 주세요."); document.login.id.focus(); return; } if(document.login.pwd.value==''){ alert("패스워드들 입력해 주세요."); document.login.pwd.focus(); document.login.action="./SecondLogin_ok.jsp"; document.login.submit(); //--> </script> JSP(JavaServerPages)

6 FirstLogin.html </head> <body>
<form name="login" method="post"> <p align="center"> <table width="156" border="0" cellspacing="0" cellpadding="0"> <tr><td> </td></tr> <tr align="center"> <td width="156" height="94" background="images/rightbgtop.gif"> <table width="154" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="64" align="right"> <img src="images/id.gif" width="44" height="11"></td> <td width="90" align="center"> <input type="text" name="id" size="8"></td> </tr> <img src="images/pwd.gif" width="56" height="11" ></td> <input type="password" name="pwd" size="8"></td> JSP(JavaServerPages)

7 FirstLogin.html <tr>
<td colspan="2" width="154" height="34" align="center"> <a href="javascript:confirmation()"> <img src="images/send.gif" border=0></a></td> </tr> </table> </td></tr> </form> </body> </html> JSP(JavaServerPages)

8 FirstLogin_ok.jsp page language="java" contentType="text/html;charset=euc-kr" %> <HTML> <BODY> <% String id = request.getParameter("id"); String pwd = request.getParameter("pwd"); if (id.equals("admin") && pwd.equals("0000")){ %> <hr> <center> 로그인 정보<br> I D : <%=id%><br> 패스워드: <%=pwd%><br> 로그인이 성공적으로 이루어졌습니다. </center> } else{ response.sendRedirect("FirstLogin_fail.html"); </BODY> </HTML> JSP(JavaServerPages)

9 FirstLogin_fail.html <html> <body> <hr>
<center> ID나 패스워드가 틀렸습니다. </center> </body> </html> JSP(JavaServerPages)

10 request 객체 & response 객체 2
FirstLogin.html 에서 각각 잘못된 아이디와 정확한 아이디를 쳐보자. 성공 실패 성공시 FirstLogin_ok.jsp에서 성공메시지를 보내주고 실패시 FirstLogin_fail.html 페이지로 이동한다. FirstLogin_ok.jsp FirstLogin_fail.html JSP(JavaServerPages)

11 request 객체 & response 객체 3
역할을 한다. 회원가입예제[FirstMember.html] 각각의 콘트롤은 회원아이디 : id 비밀번호 : pwd 성명 : name 성별 : sex 직업 : job 이메일 : 직장및학교 : company 메일링신청 : mailing 으로 구성한다. 등록버튼을 누르면 자바스크립트로 FirstMember_ok.jsp 파일로 이동한다 JSP(JavaServerPages)

12 request 객체 & response 객체 4
<% String id = makeKor(request.getParameter("id")); String pwd = makeKor(request.getParameter("pwd")); String name = makeKor(request.getParameter("name")); String job = makeKor(request.getParameter("job")); String = makeKor(request.getParameter(" ")); String company= makeKor(request.getParameter("company")); String mailing = makeKor(request.getParameter("mailing")); %> 글자가 깨지는오류발생 클라이언트(사용자)가 입력한 자료를 가져다가 각 변수에 저장하는 부분이다. 전과는 틀리게 makeKor() 메소드가 사용되었다. 그 이유는 톰캣사용시 콘트롤에 의하여 파라미터로 한글이 전송되어질때 JSP에서 한글이 깨지는 오류가 발생하기 때문이다. 그래서 넘어온 데이터는 다시 자바프로그램내에서 한글로 바꿔주는 작업을 하여야 한다. 그리하여 임의로 makeKor() 라는 이름으로 메소드를 만들어 사용한다. JSP(JavaServerPages)

13 request 객체 & response 객체 5
makeKor() 메소드 <%! public String makeKor(String s) throws java.io.UnsupportedEncodingException{ String kor=""; if (s==null) kor=null; else kor=new String(s.getBytes("ISO "),"EUC-KR"); return kor; } % makeKor() 라는 메소드를 먼저 살펴보자. 이 부분은 각 파일의 맨끝에 위치한다. 메소드로 들어오는 가인수 부분을 makeKor(String s)를 통해 s로 선언했고 그 s의 값이 Null인 경우 null 값을 보내주고 null값이 아니라면 String(s.getBytes(“ISO ”),”EUC-KR”); 자바의 표준 문자셋인 “ISO ”을 한국어 지원인 “EUC-KR”로 바꾸어주라고 명령한다. 변환후에는 변환값이 있는 kor 변수를 리턴한다. JSP(JavaServerPages)

14 request 객체 & response 객체 6
FirstMember_ok.jsp <font size="2" color="#000000"> <%=id%></font> ……… <font size="2" color="#000000"> <%=pwd%></font> <font size="2" color="#000000"> <%=name%></font> <font size="2" color="#000000"> <%=job%></font> <font size="2" color="#000000"> <%= %></font> <font size="2" color="#000000"> <%=company%></font> <font size="2" color="#000000"> <%=mailing%></font> 지난 장에서 했던 예제와 유사하다. 소스앞쪽에서 request 객체가 가져왔던 데이터를 다시 클라이언트 화면으로 보내주고 있다. JSP(JavaServerPages)

15 request 객체 & response 객체 7
FirstMember_ok.jsp …..<%=request.getRemoteAddr()%> 이 메소드는 request 객체가 클라이언트로부터 사용자의 IP를 얻어온다. ……<%=request.getHeader("User-Agent")%> 클라이언트(사용자)의 웹브라우저의 종류를 알 수가 있다. …….<%=request.getMethod()%> 어떤 방식으로 자료를 보내고 있는지 알 수가 있다. <% java.util.Date date=new java.util.Date(); %> …….<%=date.toLocaleString()%> 현재 시간을 알 수 있는 메소드이다. ………<%=response.getBufferSize()%> 지금 JSP 페이지의 버퍼사이즈를 보내준다. ……….<%=response.getCharacterEncoding()%> JSP 페이지의 무자셋을 보여준다. JSP(JavaServerPages)

16 request 객체 & response 객체 8
예제 FirstLogin_ok.jsp 의 하단부에 다음과 같이 란 명령이 있다. 이는 아이디와 비밀번호를 비교한 후 잘못된 값이 있을 경우 문서를 강제이동 시키는 역할을 한다. 이는 많이 쓰이기 때문에 알아두면 좋을 것이다. response.sendRedirect(“FirstLogin_fail.html”) JSP(JavaServerPages)


Download ppt "5. JSP의 내장객체1."

Similar presentations


Ads by Google