JSP 내장객체JSP 내장객체

Posted at 2020. 7. 28. 00:35 | Posted in 카테고리 없음
반응형




request 내장 객체


웹 서비스라 함은 웹 기반으로 클라이언트의 요청을 받아서 어떤 응답을 제공해주는 서비스를 말합니다.


이런 웹 서비스를 위한 클라이언트와 웹 서버 사이의 요청과 관련된 정보는 request 객체에 저장되어 관리된다.


그러므로 request 객체를 파악하면 클라이언트에서 서버로 전송되는 데이터를 알 수 있다.


다음은 브라우저의 요청이 있을 때 이와 관련된 정보들을 알려주는 메서드이다.



메 서 드

설  명

 getContextPath( )

 · JSP 페이지가 속한 웹 어플리케이션의 컨텍스트 패스를 구한다.

 getMethod( )

 · 요청 방식이 GET 방식인지 POST 방식인지 알려준다.

 getRequestURL( )

 · 요청 URL을 구한다.

 getRequestURI( )

 · 요청 URL에서 쿼리 스트링을 제외한 부분을 구한다.

 getQueryString( )

 · 요청 URL 다음에 오는 쿼리 스트링을 구한다.

 getSession( flag )

 · 요청 관련된 세션 객체를 구한다.

 getRequestDispacher( path )

 · 지정 로컬 URL에 대한 RequestDispacher 객체를 구한다.

 getRemoteHost( )

 · 요청한 호스트의 완전한 이름을 구한다.

 getRemoteAddr( )

 · 요청한 호트의 네트워크 주소를 구한다.

 getRemoteUser( )

 · 요청한 사용자의 이름을 구한다.

 getSession( )

 · 세션 객체를 구한다.

 getServerName( )

 · 서버의 이름을 구한다.

 getProtocol( )

 · 사용 중인 프로토콜을 알려준다.




# 소스코드

<%@ page language="java" contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>JSP</title>

</head>

<body>

컨텍스트 패스 : <%= request.getContextPath()  %><br/>

요청방식 패스 : <%= request.getMethod()  %><br/>

요청한 URL : <%= request.getRequestURL()  %><br/>

요청한 URI : <%= request.getRequestURI()  %><br/>

서버의 이름 : <%= request.getServerName()  %><br/>

프로토콜 : <%= request.getProtocol()  %><br/>

</body>

</html> 




# 출력결과



위의 실행 결과를 보면 요청 관련 메소드가 어떨 때 쓰이는지 한눈에 파악할 수 있을 겁니다.


지금까지 요청( request )관련 정보를 알려주는 메소드를 살펴보았습니다.


이번에는 request 객체의 요청 파라미터 관련 메서드에 대해어 살펴보겠습니다.


다음은 요청 파라미터 관련 메서드를 정리한 표입니다.



메 서 드

설  명

 getParameter( String name )

 · 지정한 이름의 파라미터를 구한다.

 · 지정한 이름의 파라미터가 여러개 있을 경우에는 첫 번째 파라미터의 값을 구한다.

 getParameterNames( )

 · 모든 파라미터의 이름을 구한다.

 getParameterValues( String name )

 · 지정한 이름의 파라미터가 여러 개 있을 경우 사용하며

  지정한 이름을 가진 파라미터의 모든 값을 String[ ]으로 구한다.







application 내장 객체



application 내장 객체는 하나의 웹 어플리케이션을 관리하고 웹 어플리케이션 안에서의 자원을 공유한다.


하나의 웹 어플리케이션이란 하나의 웹 프로젝트를 의미한다.




application 객체에 저장된 내용은 하나의 프로제특 내의 모든 JSP 페이지에서 공통적으로 사용할 수 있게 된다.


JSP 페이지에서 생성하지 않고 그냥 가져다 쓰는 application 내장 객체는 어떤 자료형태인지 살펴보자.





서블릿에서 제공하는 ServletContext로 선언된 application 내장 객체는 서버 기동 시 웹 어플리케이션 당 하나만 생성되며


서블릿 컨테이너의 정보를 제공하는 일, 컨테이너에게 로그 처리를 요청하는 일 등을 구현할 수 있는 다양한 메소드를 지원한다.




JSP가 서블릿 컨테이너에 의해 서블릿으로 변환 될 때,


자동으로 ServletContext 인터페이스를 구현해서 어플리케이션 내장 객체를 활용할 수 있게 해준다.




다음은 application 객체 관련 메소드를 정리한 표이다.


메 서 드

설  명

 getServerInfo( )

 · 컨테이너의 이름과 버전을 반환한다.

 getContextPath( )

 · 웹 어플리케이션의 URL 경로 중 컨텍스트 패스명을 반환한다.

 getRealPath( )

 · JSP의 실제 경로를 반환한다.

 getMimeType( filename )

 · 지정된 파일의 MIME 타입을 반환한다.

 log( message )

 · 지정된 message의 로그를 저장한다.




<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSP</title>
</head>
<body>
    <%
        String appPath = application.getContextPath();
        String filePath = application.getRealPath("06_application.jsp");
    %>
    웹 어플리케이션의 컨텍스트 패스명<br/>
    <b><%=appPath%></b>
    <hr/>
    웹 어플리케이션의 파일 경로명<br/>
    <b><%=filePath %></b>
</body>
</html> 



반응형
//