- Request 객체의 메소드

    javax.servlet.http.HttpServletRequest


getAttribute(String name)

속성값 반환

getAttributeNames()

request 객체에 있는 모든 속성값의 배열을 반환

getCharacterENCODING()

post 형식으로 전송된 자료의 문자인코딩방식을 반환

getContentType()

request의 mime타임의 밧을 문자열로 반환

getInputStream()

Post형식으로 전송된 자료의 inputStream으로 반환

getLocale()

request의 우선적 지역정보를 반환

getLocales()

접속할수 있는 모든 클라이너트 지역정보를 배열로반환

getParameter(String name)

html문서의 폼으로 넘어온 정보의 값을 반환

public String getParameter(String name)

getParameterNames()

html문서의 폼으로 넘어온 정보로부터 폼들의 이름을 배열로 반환

public Enumeration getParameterNames()

getContentLength()

전송된 자료의 길이를 반환

getParameterValues(String name)

html문서의 폼으로 넘어온 모든 정보의 값을 반환

public String[] getParamterValues(String name)

getProtocol()

사용되는 프로토콜의 종류를 문자열로 반환

getReader()

post 형식으로 전송된 자료를 읽을 Reader를 반환

getRemoteAdd()

접속한 클라이언트의 ip 어드레스값을 문자열로 반환

getRemoteHost()

접속한 클라이언트의 도메인이름을 문자열로 반환

getServerName()

request를 처리하는 서버의 이름을 문자열로 반환

getServerPort()

request를 처리하는 소버의 포트번호를 정수형으로 반환

isSecure()

보안모드가 적용되는 클라이언트와 접속되어있는지 여부를 논리값반환

getAuthType()

인증형에 대한 값을 문자열로 반환

getContextPath()

어플리케이션 디렉토리의 url을 문자열로 반환

getCookies()

클라이언트부터 전송된 쿠키에 대한 정보를 반환

getMethod()

get,post인지를 문자열로 반환

public String getMethod()

getQueryString()

request의 QueryString값을 문자열로 반환

public String getQueryString()

getRequestedSession()

세션아이디의 값을 문자열로 반환

getProtocol()

사용되는 프로토콜의 종류를 문자열로 반환

getSession()

현재 세션 객체를 반환

public HttpSession getSession()



 - Response 객체의 메소드


javax.servlet.http.HttpServletResponse 


flushBuffer()

버퍼에 저장되는 있는 내용을 클라이언트에 전송

getBufferSize()

출력 버퍼의 크기를 정수 자료형으로 반환

getCharacterENCODING()

Response시 사용하는 문자 인코딩 방법으로 문자열 자료형으로 반환

getLocale()

지역정보를 java.util.Local 클래스의 객체형으로 반환

getOutputStream()

클라이언트에 자료를 전송하는 출력 스트립의 객체를 반환

isCommitted()

클라이언트에 어떤 내용으로 버퍼로부터 전송했으면 true로 반환

setBufferSize(int size)

출력 버퍼의 크기를 설정

setContentType(String type)

응답시 사용할 Content Type을 설정

setLocale(Locale locale)

지역정보를 임의로 설정함

addCookie(Cookie cookie)

쿨라이언트에게 새로운 쿠키정보를 전송함

sendError(int sc)

상태 코드에 따른 Http 에러 페이지를 클라이언트에게 전송함

sendRedirect(String Location)

현재 페이지에서 문서를 다른 페이지로 이동시킴


 - Session 객체의 메소드


javax.servlet.http.HttpSession 


getAttribute(String name)

Session에 저장된있는 속성값중 name에 해당값을

Object의 객체형으로 반환

getAttributeName()

Session객체에 값을 저장하고 있는 각각의 속성의 이름 모두를

Enumeration객체형으로 반환

getCreatonTime()

클라이언트가 접속하여 생성된 Session의 생성 시간을 long형으로 반환

public long getCreationTime()

getId()

클라이언트에 할당된 Session의 ID값을 문자열 형으로 반환

public String getId()

getLastAccessedTime()

현재의 세션이 jsp 페이지에 접근한 최근 접속시간을 long형으로 반환

public long getLastAccessedTime()

getMaxInactiveInterval()

사용자가 세션을 부여받은후 아무것도 하지 않을 경우 자동적으로 세션을

종료하도록 설정된 시간의 값을 정수형으로 반환

public int getMaxInactiveInterval()

invalidate()

현재 실행중인 세션을 무효화(종료)

public void invalidate()

isNew()

현재 실행중인 세션이 새로운것인지를 대한 여부를 논리값을 반환

public boolean isNew()

removeAttribute(String name)

현재 세션이 저장되어있는 속성값들중 지정한 속성의 값을 지움

setAttribute(String name,Object value)

현재 세션이 새로운 이름의 속성을 만들고 그 속성에 값을 할당함

setMaxInactiveInterval(int seconds)

세션을 할당받고 아무런 액션이 없을 경우 세션이 자동으로 종료하는

시간을 설정함

public void setMaxInactiveInterval(int seconds)


 -  Out 객체


javax.servlet.jsp.JspWriter 


 -   Application객체


javax.servlet.ServletContext 


getAttribute(String name)

Application 속성값중에 name에 해당하는 값을 Object의 객체형으로 반환

getAttributeNames()

Application 저장되어 있는 속성명들을 열거 자료형으로 반환

getInitParameter(String name)

Application이 초기화될때 설정된 파라미터 값을 가져옴

getInitParameterNames()

Application이 초기화될때 설정된 파라미터의 이름을 열거 자료형으로 반환

getMimeType(String url)

지정한 위치에있는 파일의 MimeType을  문자열형으로 반환함

getServerInfo()

서버의 정보를 문자열형으로 반환

public String getServerInfo()

removeAttribute()

Application의 속성을 제거함

setAttribute(String name,Object value)

Application의 속성을 설정함



 -  PageContext 객체


javax.servlet.jsp.PageContext 


findAttribute()

모든 Scope내에서 속성을 찾아옴

getException()

예외처리 객체를 가져옴

public abstract Exception getException()

getOut()

Out객체를 가져옴

public abstract JspWriter getOut()

getPage()

Page 객체를 가져옴

public abstract Object getPage()

getRequest()

Request 객체를 가져옴

public abstract ServletRequest getRequest()

getResponse()

Response 객체를 가져옴

public abstract ServletResponse getResponse()

getServletConfig()

Config 객체를 가져옴

public abstract ServletConfig getServletConfig()

getServletContext()

Application 객체를 가져옴

public abstract ServletContext getServletContext()

getSession()

Session 개게를 가져옴

public abstract HttpSession getSession()


 -  예외처리


1)페이지 예외처리

   

<%@ page errorPage="error.jsp" %>

<%@ page isErrorPage="true" %>

<%=exception.toString() %>

try {

} catch(Exception e) {

} finally {

}


 -  기타


FileReader클래스 

<%@ page import!="java.io.*" errorPage="error.jsp" contentType="text/html;charset=euc-kr" %>


read()

문자열을 하나씩 읽어옴/끝에 도달 -1반환

read(char[] cbuf,int off, int len)

문자를 지정한 위치에서 지정한 길이만큼 읽어옴

read(char[] cbuf)

문자를 한꺼번에 지정한 버펀의 크기만큼 읽어옴


FileWriter클래스 


write(int c)

Ascii코드형식으로 되어있는 문자하나를 파일에 써 넣음

write(char[] cbuf,int off,int len)

버퍼에 저장되어 있는 문자 자료를 지정한 위치에 지정한 길이 만큼씀

write(char[] cbuf)

버퍼에 저장되어있는 자료를 한꺼번에 파일에 씀

write(String str)

String의 객체에 저장되어있는 자료를 파일에 씀

write(String str,int off,int len)

String의 객체에 저장되어있는 자료를 지정한 위치에 지정한 길이만큼 씀

FileWriter testWrite = new FileWriter();

testWriter.close() //닫아 주어야 함


▶문자열 -> 숫자형

int num;

num = Integer.parseInt("12345",진수);

 

▶숫자형 -> 문자열

String num;

num = Integer.toString(12345);


 -  Driver정보


getDriver

시스템에 설치된 드라이브정보를 열거형으로 반환



 -  Driver로딩


Class.forName("드라이브 이름“)

ODBC -Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

MSsql -Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

Mysql - Class.forName("org.gjt.mm.mysql.Driver")

Oracle - Class.forName("oracle.jdbc.driver.OracleDriver");

16. 데이터베이스 연결명령어 작성

ODBC - "jdbc:odbc:database_name"

MSsql - "jdbc:microsoft:sqlserver://ip_address:1433;DataBaseName=pubs";

Mysql - "jdbc:mysql://ip_address:3306/database_name"

Oracle - "jdbc:oracle:thin:@ip_address:1521:ORCL"


getConnection(String url,String user,String password)

데이터베이스 연결하고 그 연결객체를 반환

getConnection(String url)

데이터베이스를 연결하고 그 연결객체를 반환


 -  Jsp의 Action 태그


▶<jsp:useBean>

<jsp:userBean id="beanInstanceName" scope="page | requst | session | application"

{

   class="package.class" |

   type="package.class" |

   class="package.class" type="package.class" |

   beanName="{package.class | <%=expression! %>}"

   type="package.class"

}

   { /> | >other elements </jsp:useBean>}

 

▶<jsp:setProperty>

<jsp:setProperty name="beanInstanceName"

   {

     property="*" |

     property="propertyName"[param="parameterName"]|

     property="propertyName" value="{string | <%=expression! %>}"

   }

  />

 

▶<jsp:getProperty>

<jsp:getProperty name="beanInstanceName" property="propertyName" />


▶<jsp:include>

<jsp:include page="{relativeURL | <%=expression!%>}" flush="true" />

or

<jsp:include page="{relativeURL | <%=expression!%>}" flush="true">

  <jsp:param name="parameterName" value="{parameterValue | <%=expression!%>}" />

</jsp:include>

 

▶<jsp:forward>

<jsp:forward page={"relativeURL" | "<%=expression! %>"} />

or

<jsp:forward page={"relativeURL" | "<%=expression! %>"}>

<jsp:param name="parameterName" value="{parameterValue | <%=expression! %>}" />

</jsp:forward>

response.sendRedirect("/test/test.jsp?usrname=jssdd");

 

▶<jsp:plugin>

<jsp:plugin

     type="bean | applet!"

      code="classFileName"

      codebase="classFileDirectoryName"

      [name="instanceName"]

      [archive="URIToArchive,..."]

      [align="bottom | top | middle | left | right "]

      [height="displayPixels"]

      [width="displayPixels"]

      [hspace="leftRightPixels"]

      [vspace="topBottomPixels"]

      [jreversion="JREVersionNumber | 1.1"]

      [nspluginurl="URLToPlugin"]

      [iepluginurl="URLToPlugin"]

      [<jsp:params>

         [<jsp:param name="parameterName" value="{parameterValue | <%=expression! %>}" /> ]+

      </jsp:params> ]

      [<jsp:fallback>text message for user </jsp:fallback>]

</jsp:plugin>



 Cookie의 클래스에서 사용할수 있는 메소드


Cookie(String name,String value)

Cookie 클래스의 생성자 매개변수 name,value를 이용해 해당하는

이름과 값을 가진 쿠키를 생성

getDomain()

쿠키의 도메인을 반환

public String getDomain()

setDomain(String _domain)

쿠키의 도메인을 설정

public void setDomain(String domain)

getMaxAge()

쿠키의 수명을 반환

public int getMaxAge()

setMaxAge(int _expir)

쿠키의 수명을 설정

public void setMaxAge(int seconds)

getName

쿠키의 이름을 반환

public String getName()

getPath()

쿠키의 유효한 URL의 일부를 반환

public String getPath()

setPath(String _path)

쿠키의 경로를 설정함

public void setPath(String path)

getSecure()

쿠키의 보안 채널을 통해 전달되는지의 여부를 반환

public boolean getSecure()

setSecure(boolean _flag)

쿠키를 보안 채널을 통해 전달할 것인지의 여부를 반환

public void setSecure(boolean b)

getValue()

쿠키의 값을 반환

public String getValue()

setValue(String value)

쿠키의 값을 설정함

public void setValue(String value)

getVersion()

쿠키의 버전을 반환, 기본값 0

public int getVersion()

setVersion(int ver)

쿠키의 버전을 설정, 0 이나 1 설정

p
ublic void setVersion(int version)

Cookie myCookie = new Cookie("userName", "박선영“);
myCookie.setMaxAge(60*60*24); //하루


 -  Exception 객체


getMessage()

에러 메시지 리턴

public String getMessage()

printStackTrace()

에러 출력 스트림으로 스택 틀레이스 정보 출력

public void printStackTrace()

printStackTrace(PrintWriter out)

스택 트레이스 정보를 파라미터로 지정 객체 out으로 출력

public void printStackTrace(PrintWriter out)

printStackTrace(PrintStream out)

스택 트레이스 정보를 파라미터로 지정 객체 out으로 출력

public


'공부방 > JSP' 카테고리의 다른 글

[MultipartRequest] 겔러리 게시판 구성할 때 봤던 문서  (0) 2009.07.23

cos.jar 파일 다운로드 및 설정

1.http://www.servlets.com/cos/


스크롤바를 이용해서 [Download]가 있는 곳까지 화면을 이동시킨다.

cos-05Nov2002.zip 항목을 클릭한다. 이링크를 클릭하여 파일을 다운로드 받는다.

압축 해제한다. lib폴더에 cos.jar  파일을 복사해서 톰캣홈 \webapps\study\study\WEB-INF

폴더 안에 붙혀넣기 한다.

5.x 이상인 경우 톰캣홈\commons\lib 폴더에도 붙혀넣기 한다.

 

2.톰캣홈\webapps\study 폴더에 업로드될 파일을 모아놓을 저장소인 filesSave 폴더를 만든다.

업로드하면 \webapps\study\fileSave 폴더에 업로드된 파일을 확인 할수있다.

 

cos.jar 파일의 com\oreily\servlet 폴더를 보면 MultipartRequest 클레스가 있으며, 이 클레스에서 제공되는 API를 활용하면 파일 업로드 및 폼 요소에 대한 처리를 할수 있다.

 

MultipartRequest의 생성자

MultipartRequest(javax.servlet.http.HttpServletRequest request,  java.lang.String saveDiretory,  int maxPostSize,  java.lang.String ENCODING, FileRenamePolicy policy) 

MultipartRequest multi = new MultiPartRequest(request, folderDirectory, 1024*10,  "euc-kr",  new DefaultFileRenamePolicy() );

                                                                  

레퍼런스명  multi이고 첫번째 인자는 request 객체이고,

두번째 인자는 업로드된 파일이 저장될 경로

세번째 인자는 업로드할 파일의 최대 크기,

네번째 인자는 인코딩 타입,

5번째 인자는 업로드 될 파일명이 기존의 파일명과 같은경우 덮어쓰기를 방지하기 위해 설정

 

메소드

1. getParameterNames() - return type : java.util.Enumeration

모든 파라미터 이름을 Enumeration으로 반환한다.

 Enumeration params = multi.getParameterNames();

 생성된 MultipartRequest 객체는 multi 레퍼런스를 통해서 생성된 MultipartRequest 객체가 가지고

있는 메소드를 사용할 수 있다. getParameterNames() 메소드는 폼에서 전송한 파라미터들의 이름을

Enumeration 타입으로 반환한다. 폼에 있는 input 태그중 file 속성이 아닌 모든 파라미터들의 이름

을 반환하는 메소드 이다.

 

2.getParameter(java.lang.String name)   -return type: java.lang.String

 String paramValue=multi.getParameter(java.lang.String name);

request 객체에서 사용되는 getParameter 메소드 처럼 파라미터의 이름을 인자로 받아서 그 파라미터

의 값을 반환하는 메소드이다. 이 메소드에 전달될 인자는 getParameterNames()메소드를 통해서

얻어온 파라미터이름을 인자로 주면 그 파라미터에 담긴 값을 반환한다.

 

3.getFileNames() - return type: java.util.Enumeration

 Enumeration filses = multi.getFileNames();

폼 요소중 input 태그에서 file 속성으로 지정된 태그의 name 속성의 값, 즉 file 속성을 가진 파라미터의 이름을 Enumeration 객체 타입으로 반환 한다. 예를 들면 <input type="file" name="uploadFile">

태그가 폼 요소에 있었다면 getFileNames() 메소드는 uploadFile이란 파라미터의 이름을 저장한

Enumeration 객체를 반환한다.

 

4.getFilesystemName() - return type: java.lang.String

 String filename = multi.getFilesystemName(name);

file속성으로 지정된 input태그에 의해 서버상에 실제로 업로드된 파일 이름을 String 객체 타입으로

반환한다. 이 메소드가 반환하는 파일명은 file 속성을 가진 input 태그에서 사용자가 지정한 파일 이름

이 아니고 사용자가 선색한 파일이 실제 서버상의 폴더에 저장되었을때의 파일명을 반환한다. 왜냐하면 업로드시 파일명이 변경될수있기때문

아래의 getOriginalFileName()메소드와 비교

 

5.getOriginalFileName() - return type:java.lang.String

 String original = multi.getOriginalFileName(name);

사용자가 직접 지정한 파일명을 반환한다. MultipartRequest 클래스의 생성자 중 중복된 파일을 덮어

쓰는 것을 방지하기 위해 사용되는 FileRenamePolicy 인터페이스를 구현한 DefaultFileRenamePolicy 클래스에 의해서 파일명이 변경되기전의 파일명을 반환한다.

 

getFileSystemName() 메소드는 기존에 업로드된 파일명들 중에 새로 업로드할 파일명이 중복될

경우 파일명 뒤에 <원 파일명1.확장자 , 원 파일명2.확장자> 식으로 변경된 이름을 반환한다.

예를 들어 업로드한 파일명이 abc.zip일 경우, 같은 파일을 중복해서 업로드하면 다음에 업로드

되는 abc.zip파일명이 abc1.zip으로 변경된다. 중복되는 경우가 없다면 원래 파일명을 반환한다.

 

요약하면 , getOriginalFileName()은 사용자가 지정해서 업로드되는 파일명을 반화하고,

getFileSystemName()메소드는 파일명이 중복되는 경우 변경된 파일명을 반환한다. 

 

6.getContentType() - return type:java.lang.String

 String type = multi.getContentType(name);

getContentType()메소드는 업로드된 파일의 콘텐츠 타입을 반환한다.

 

7.getFile() - return type:java.io.File

 File file = multi.getFile(name);

getFile()메소드는 서버상에 업로드된 파일에 대한 객체를 반환한다.


'공부방 > JSP' 카테고리의 다른 글

[jsp] 함수들!  (0) 2009.07.23

+ Recent posts