프로그래밍/JSP Servlet

JSP/Servlet - 서버 및 서블릿 환경 정보 가져오기(ServletContext)

가카리 2016. 1. 5. 21:39
반응형

 

서블릿 클래스나 jsp 환경에 관련된 정보를 가져오는 방법은 javax.servlet.ServletContext 인터페이스를 이용하면 됩니다.

 

이 인터페이스를 가져오기위해서는 getServletContext 메소드를 사용합니다.

 

이 메소드는 모든 서블릿 클래스의 부모클래스인 javax.servlet.GenericServlet 클래스에 속하므로 바로 getServletContext 메소드를 사용하시면 됩니다.

 

 

ServletInfoServlet.java

 

package com.exam.kch;

 

import java.io.IOException;

import java.io.PrintWriter;

 

import javax.servlet.ServletContext;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

 

/**

* Servlet implementation class ServletInfoServlet

*/

@WebServlet("/ServletInfoServlet")

public class ServletInfoServlet extends HttpServlet {

 

    @Override

    protected void doGet(HttpServletRequest req, HttpServletResponse resp)

            throws ServletException, IOException {

        // TODO Auto-generated method stub

        ServletContext context = getServletContext();//ServletContext인터페이스를 가져옵니다.

        

        String serverInfo = context.getServerInfo();//서버 정보

        int majorVersion = context.getMajorVersion();//버전 정보

        int minorVersion = context.getMinorVersion();//버전 정보

        resp.setContentType("text/html;charset=euc-kr");

        PrintWriter out = resp.getWriter();

        out.println("<HTML>");

        out.println("<HEAD><TITLE> 서버의 정보</TITLE></HEAD>");

        out.println("<BODY>");

        out.printf("서버 종류 : %s <BR>", serverInfo);

        out.printf("서블릿 버전: %d.%d <BR>", majorVersion, minorVersion);

        out.println("</BODY>");

        out.println("</HTML>");

    }

 

}

 

 

실행 화면

 

 

 

JSP에서 ServletContext인터페이스와 동일한 결과를 얻으려면 application 내장 변수를 이용하면 됩니다.

 

ServerInfo.jsp

 

<%@ page language="java" contentType="text/html; charset=EUC-KR"

pageEncoding="EUC-KR"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">

<title>Insert title here</title>

</head>

<body>

    서버 종류 : <%= application.getServerInfo() %> <BR>

    서블릿 버전 : <%= application.getMajorVersion() %>.<%= application.getMinorVersion() %>

    <BR>

</body>

</html>

 

실행 화면

 

반응형