'JSP'에 해당되는 글 34건

  1. 2008.09.08 JSP 내장객체
  2. 2008.09.08 Request 객체에서의 QueryString method의 사용
  3. 2008.09.08 만료된 페이지입니다.
  4. 2008.09.08 주민등록번호, 그 속에 숨은 비밀을 아시나요?

JSP 내장객체

내장객체 상속되는 클래스 혹은 인터페이스
  request   javax.servlet.http.HttpServletRequest
  response   javax.servlet.http.HttpServletResponse
  session   javax.servlet.http.HttpSession
  page   javax.servlet.jsp.HttpJspPage
  pageContext   javax.servlet.jsp.PageContext
  out   javax.servlet.jsp.JspWriter
  application   javax.servlet.ServletContext
  config   javax.servlet.ServeletConfig
  exception   java.lang.Throwable



■ request
클라이언트로부터의 요청을 처리하는 객체
메소드 설 명 비 고
getParameterName() 모든 요청 매개변수의 이름을 리턴합니다. 요청 매개변수를
액세스하기 위한
메소드
getParameter(name) name에 해당하는 매개변수의 값을 리턴합니다.
getParameterValues(name) name에 해당하는 매개변수의 모든 값을 리턴합니다.
getHeaderNames() 요청에 대한 헤더의 이름을 리턴합니다. 요청 헤더를

읽어내는 메소드
getHeader(name) name에 대한 헤더 값을 String형으로 리턴합니다.
getHeaders(name) name에 대한 모든 헤더 값을 리턴합니다.
getIntHeader(name) name에 대한 헤더 값을 int형으로 리턴합니다.
getDateHeader(name) name에 대한 헤더의 날짜값을 리턴합니다.
getCookies() 요청에 대한 모든 쿠키를 리턴합니다.
getMethod() 요청에 대한 HTTP(GET,POST) 메소드를 리턴합니다.
getRequestURL() 요청 URL을 리턴합니다. (질의 문자열은 안 한다.)
getQueryString() 요청 URL을 리턴합니다. (질의 문자열 포함)
getSession(flag) 들어온 요청의 세션데이터를 리턴합니다.
getRequestDispatcher(path) Path에 지정된 로컬URL에 대한 요청 전달자를 리턴합니다.
getRemoteHost() 요청을 보낸 호스트의 이름을 리턴합니다.
getRemoteAddr() 요청을 보낸 호스트의 IP를 리턴합니다.
getRemoteUser() 요청을 보낸 사용자의 이름을 리턴합니다.


■ response
서버가 클라이언트에게 처리결과를 응답하는 객체
메소드 설 명 비 고
setContentType() 응답되는 컨텐츠의 MIME타입을 설정합니다. 컨텐츠 설정에
필요한 메소드
setCharacterEncodeing() 응답되는 컨텐츠의 문자 인코딩 스타일을 리턴합니다.
AddCookie(cookie) 쿠키를 추가합니다. 응답헤더 세팅을

위한 메소드
AddHeader(name,value) 해당이름의 헤더에 값(String)을 추가합니다.
AddIntHeader(name,value) 해당이름의 헤더에 값(int)을 추가합니다.
AddDateHeader(name,date) 해당이름의 헤더에 날자값을 추가합니다.
ContainsHeader(name) 해당이름의 헤더가 포함 되어 있는지 체크합니다.
SetHeader(name,value) 해당이름의 헤더에 값(String)을 넣습니다.
SetIntHeader(name,value) 해당이름의 헤더에 값(int)을 넣습니다.
SetDateHeader(name,value) 해당이름의 헤더에 날짜값을 넣습니다.
setStatus(code) 응답 상태코드를 설정합니다.
sendError(status,msg) 응답코드와 에러 메세지를 설정합니다.
sendRedirect(url) 다른 URL로 이동합니다.
EncodeRedirectURL(url) SendRedirect() 메소드에 넣을 url을 인코딩합니다.
EncodeURL(name) 링크에 넣을 url을 인코딩합니다.


■ session
사용자 개개인의 정보를 처리하는 객체로 사용자가 웹 서버에 접근하면 생성되어 종료 할 때까지 따라다니져..
메소드 설 명
getId() session의 ID를 리턴합니다.
getCreationTime() session이 생성된 시간을 long형으로 리턴합니다.
getLastAccessedTime() session이 마지막으로 액세스된 시간을 리턴합니다.
getMaxInactiveInterval() session이 유지되는 최대시간을 초단위로 리턴합니다.
getMaxInactiveInterval(time) session이 유지되는 최대시간을 초단위로 설정합니다.
isNew() session 값이 없으면 true를 리턴합니다.
invalidate() session 객체를 소멸시킵니다.
session에 저장되어 있던 정보는 모두 삭제됩니다.
getAttribute(name) 세션변수(name)에 설정된 값을 리턴합니다.
setAttribute(name,value) 세션변수(name)에 값(value)을 설정합니다.


■ page
현재 JSP페이지를 나타내는 객체

■ pageContext
JSP 실행에 대한 context 정보를 담고 있는 객체
메소드 설 명 비 고
getException() exception 객체를 리턴합니다. 객체 내부 속성을

알 수 있는

메소드
getOut() out 내부객체를 리턴합니다.
getsession() session 내부객체를 리턴합니다.
getServletConfig() config 내부객체를 리턴합니다.
getServletContext() application 객체를 리턴합니다.
getPage() page 내부객체를 리턴합니다.
getRequest() request 내부객체를 리턴합니다.
getReponse() reponse 내부객체를 리턴합니다.
forward(path) 다른 path에 해당하는 URL로 전달합니다. 요청 전달 메소드
include(path) 다른 path의 페이지를 현제 페이지에 포함합니다.
setAttribute(key,value,scope) Scope의 시간동안 key의 값(value)를 저장합니다. scope속성을

제어 할 수 있는

메소드
getAttributeNamesInScope(scope) 특정 scope의 모든 속성을 리턴합니다.
getAttribute(key,scope) Key에 대한 scope를 리턴합니다.
removeAttribute(key,scope) Key에 대한 scope를 제거합니다.
findAttribute(name) Name에 지정된 속성의 scope를 찾습니다.
getAttributeScope(name) Name에 해당하는 scope를 리턴합니다.


■ out
클라이언트에게 응답하기 위한 output 스트림을 처리하는 객체입니다.
메소드 설 명
print() 내용이 줄바꿈 없이 이어서 출력됩니다.
println() 내용이 줄단위로 출력됩니다.
getBufferSize() 출력버퍼의 크기를 Byte로 리턴합니다.
getRemaining() 출력버퍼의 빈부분 크기를 Byte로 리턴합니다.
clearBuffer() 출력 버퍼를 비웁니다.
clear() 출력 버퍼를 비웁니다. (만약 전에 flush되어 있으면 에러를 발생합니다.)
flush() 출력버퍼를 flush시킵니다.
close() 출력스트림을 닫습니다.


■ application
웹서버의 애플리케이션이 실행되는 실행환경에 대한 정보를 처리하는 객체입니다..
메소드 설 명 비 고
getServerInfo() 컨테이너의 이름과 버전을 리턴합니다. 컨테이너 버전을

알 수 있는 메소드
getMajorVersion() 컨테이너의 주버전을 리턴합니다.
getMinorVersion() 컨테이너의 부버전을 리턴합니다.
getContext(path) Path에 대한 외부환경 정보를 리턴합니다. 서버측의 경로를

알 수 있는 메소드
getRealPath(path) path에 대한 절대경로를 리턴합니다.
getResource(path) path에 지정된 URL을 액세스 객체로 바꾸어줍니다.
getResourceAsStream(path) path에 URL을 읽을 수 있는 입력 스트림으로 바꾸어줍니다.
GetMimeType(filename) filename에 해당하는 파일의 MIME타입을 리턴합니다.
log(msg) msg를 로그파일에 기록합니다. 로그파일 관련 메소드
log(msg,exception) msg와 exception(예외상황)을 로그파일에 기록합니다.


■ config
JSP페이지가 컨테이너에 의해 컴파일되어 서블릿 클래스가 될 때 서블릿의 구성데이터로 초기값과 변수를 저장하는 객체입니다.
메소드 설 명
getInitParameterNames() 변수의 이름을 리턴합니다.
getInitParameter(name) 변수의 이름을 넣을 경우에는 값을 리턴합니다.


■ exception
프로그램에서 예외상황이 발생했을 때 이를 처리하는 객체
exception객체를 다루려면 page지시자의 isErrorPage 속성을 true로 해놓아야 합니다.
<%@ page isErrorPage="true" %>
메소드 설 명
GetMessage() 에러 메세지를 리턴합니다.
ToString() 에러메세지를 String형으로 리턴합니다.
PrintStackTrace(out) 에러발생시 출력스트림을 통하여 출력합니다.
2008. 9. 8. 14:32

Request 객체에서의 QueryString method의 사용

2. Post방식을 통한 서버로의 데이터 전송

>>>>> post.html
<HTML>
<head><title>파일명:post.html</title></head>
<BODY>
<FORM action="postProc.asp" method="post" name=form1>
<H3>
이 름 : <INPUT type="text" name="name" SIZE=15 maxlength=15><BR>
성 별 : <INPUT type="text" name="sx" SIZE=8 maxlength=8><BR>
주 소 : <INPUT type="text" name="addr" SIZE=50 maxlength=50> <BR> <HR>
<input type="submit" name="post1" value=" Post로 전송 ">
</form>
</BODY>
</HTML>


>>>>> postProc.asp
<HTML>
<head><title>파일명:postProc.asp</title></head>
<BODY>
<H2>
<%
 Response.Write "POST방식으로 서버로 데이터 전송<BR>"
 Response.Write "이름 : " & Request.Form("name") & "<BR>"
 Response.Write "성별 : " & Request.Form("sx") & "<BR>"
 Response.Write "주소 : " & Request.Form("addr") & "<BR>"
%>
</H2>
</BODY>
</HTML>


3. 두수를 입력받아 더하기, 빼기, 곱하기, 나누기를 구하는 계산기 만들기
   - Cint() : 문자열을 숫자형으로 변환한다.

출력형식
-----------------
100 + 50 = 150
100 - 50 = 50
100 * 50 = 5000
100 / 50 = 2


>>>>> post2.html
<HTML>
<head><title>파일명:post2.html</title></head>
<BODY>
<FORM action="postProc2.asp" method="post" name=form1>
<H3>
수를 입력 하세요.<br>
수 1 : <INPUT type="text" name="su1" SIZE=10 maxlength=8><BR>
수 2 : <INPUT type="text" name="su2" SIZE=10 maxlength=50> <BR> <HR>
<input type="submit" name="post1" value=" Post로 전송 ">
</form>
</BODY>
</HTML>


>>>>> postProc2.asp
      데이터 처리로직을 입력해 보세요.


4. checkbox의 값 읽어 오기
   - 5개 이상의 취미를 등록하여 선택한 취미를 모두 출력하는 프로그램을 작성하세요.
   - 등산, 영화감상, 음악감상, 낚시, 게임, 독서, 여행, 수영, 헬스, 배드민턴, 탁구, 농구, 축구, 테니스등...

>>>>> post3.html
<HTML>
<head><title>파일명:post2.html</title></head>
<BODY>
<FORM action="postProc2.asp" method="post" name=form1>
<H3>
취미를 입력 하세요.<br>
<INPUT TYPE="checkbox" NAME="chk1">등산
<INPUT TYPE="checkbox" NAME="chk2">영화감상
<INPUT TYPE="checkbox" NAME="chk3">음악감상
<INPUT TYPE="checkbox" NAME="chk4">낚시
<INPUT TYPE="checkbox" NAME="chk5">게임
<input type="submit" name="post1" value=" Post로 전송 ">
</form>
</BODY>
</HTML>


>>>>> postProc2.asp
      데이터 처리로직을 입력해보세요.



▩ Request 객체에서의 QueryString method의 사용

1. Get방식을 통한 서버로의 데이터 전송
   - 문자, 숫자 전송
   - Request.QueryString(Input 태그명)

>>>>>>>>>> get.html
<HTML>
<head><title>파일명:get.html</title></head>
<BODY>
<FORM action="getProc.asp" method="get" name=form1>
<H3>
이 름 : <INPUT type="text" name="name" SIZE=15 maxlength=15><BR>
성 별 : <INPUT type="text" name="sx" SIZE=8 maxlength=8><BR>
주 소 : <INPUT type="text" name="addr" SIZE=50 maxlength=50> <BR> <HR>
</H3>
<INPUT type="submit" name="get1" value=" 확인 ">
</FORM>
</BODY>
</HTML>


>>>>>>>>>> getProc.asp
<HTML>
<head><title>파일명:getProc.asp</title></head>
<BODY>
<H2>
<%
 Response.Write "GET방식으로 서버로 데이터 전송<BR>"
 Response.Write "이름 : " & Request.QueryString("name") & "<BR>"
 Response.Write "성별 : " & Request.QueryString ("sx") & "<BR>"
 Response.Write "주소 : " & Request.QueryString ("addr") & "<BR>"
%>
</H2>
</BODY>
</HTML>


2. 라디오버튼의 값 가져오기


▷ 서울/경기도/강원도/충청도/경상도/전라도를 나타내는 option을 만들고 성명을 입력받는 텍스트 상자를 만들어
   지역과 성명을 출력하는 프로그램을 작성하세요.

   입력:radio.html, 출력:radio.asp  


3. GET 방식의 다른 형태
   - ? : 파일명과 인수의 분리
   - & : 인수의 구분

>>>>>>>>>> href.html
<HTML>
<head><title>파일명:href.html</title></head>
<BODY>
<A href="getProc.asp?name=왕눈이&sx=남자&addr=인천시 서구 가좌4동 499-1 번지">개구리</a><BR><BR>
<A href="getProc.asp?name=아로미&sx=여자&addr=서울시 강남구 역삼동 강남센터빌딩 2층">왕눈이</a><BR>
</BODY>
</HTML>


 출처 http://blog.naver.com/garfield716/120008078785

2008. 9. 8. 14:31

만료된 페이지입니다.

인터넷 탐색기로 웹 페이지를 읽다가 뒤로 버튼을 클릭하는 경우 다음과 같은 오류 메시지가 나타나는 것을 종종 볼 수 있다.


경고: 만료된 페이지입니다.


사용자가 요청한 페이지는 폼으로 보낸 정보를 사용하여 만들어진 페이지입니다. 이 페이지는 더 이상 사용할 수 없습니다. 보안을 위해 Internet Explorer는 사용자의 개인 정보를 자동으로 재전송하지 않습니다.

사용자 개인 정보를 재전송하고 이 페이지를 보려면 새로 고침 단추를 클릭하십시오.

사실 이 메시지는 인터넷 탐색기의 오류가 아니라 일반적으로 방문하는 웹 사이트가 다음 조건을 만족하는 경우 발생한다.

  1. Server Side Program으로 구축된 사이트
    여기서 Server Side Program 프로그램은 오늘날 구축된 대부분의 웹 사이트에서 사용하는 SSI, CGI, PHP, JSP, ASP, PSP등을 포함한다.
  2. 폼의 메소드가 POST인 경우
    문서를 요청하는 방법은 GET과 POST가 있는데 POST 메소드를 사용해서 문서를 요청하는 경우 위와같은 현상이 발생한다.
  3. 웹 페이지에 Cache Control을 사용한 경우
    서버 사이드 프로그램으로 제작된 사이트는 항상 동적으로 변하며, 이 동적으로 변하는 정보를 매번 출력하기위해 일반적으로 Cache Control을 사용한다. 즉, HTTP 헤더를 이용하는 경우에는 Pragma: no-cahce, HTML의 메타 태그를 사용하는 경우에는 <META HTTP-EQUIV="Pragma" CONTENT="no-cache">를 사용한다.


즉, 이 문제는 웹 사이트의 문제이며, 따라서 인터넷 탐색기의 현재 버전으로는 처리할 수 있는 방법은 없다.


출처 http://blog.naver.com/reomereome/40014430069

2008. 9. 8. 14:30

주민등록번호, 그 속에 숨은 비밀을 아시나요?

주민등록번호, 그 속에 숨은 비밀을 아시나요?

앞의 6자리가 생년월일 이라는 것 다 아실 테고, 뒤의 7자리 중 첫번째가 성별을 나타낸다는 건 다 아실테고, 그럼 나머지 숫자들의 의미도 알고 계시나요?



주민등록번호의 뒤의 7자리의 비밀을 알려 드릴께요. 그 중 첫번째는 성별을 나타내죠. 20세기에 태어난 사람은 남자의 경우 1, 여자는 2였는데, 21세기가 되면서 남자는 3, 여자는 4라는 숫자가 부여되었어요. 그 다음의 4자리는 출생지역의 조합번호예요. 그런데, 왜 그렇게 4자리 조합이 되는 지는 비밀이라는 군요.


그리고 그 다음 번호는 해당 지역의 같은 성씨 중에서 출생 신고한 순서를 나타내는 거죠. 만약 그 숫자가 1번이라면 그 지역 그 성씨 중에서는 그 날 첫번째로 신고한 주인공이 되는 거랍니다. 마지막 끝번호는 주민등록번호가 진짜인지 아닌지 검증하는 오류검증 번호랍니다.




오류를 어떻게 검증하는 지는 옆의 연산을 이용해 계산해 보세요. 만약 나머지가 10이 나온다면 끝의"0"이 오류 검증 번호랍니다.

오류 검증 어떻게 하시는 지 아셨죠? 한번 해보세요! 딱 맞아 떨어질 테니까요!

 


출처 http://blog.naver.com/reomereome/40009235196