본문 바로가기

Java&JSP&Spring/JSP&Servlet

[JAVA/Servlet]모든 Servlet에서 공용 파라미터를 사용하는 방법(ServletContext)

 

[JAVA/Servlet]모든 Servlet에서 공용 파라미터를 사용하는 방법(ServletContext)

안녕하세요 미나라이입니다.

이번 포스팅에서는 Servlet에서 공용으로 사용하기 위한 파라미터를 설정하는 방법에 대해서 알아보도록 하겠습니다.

프로젝트 환경

OS : Windows 10

IDE : Eclipse 2020-06 (4.16.0)

Java : 8

Jdk Version : 1.8.0_161

WAS : Tomcat 8.5.73

 

저번 포스팅에서는 특정 Servlet생성시 초기에 필요한 파라미터를 설정하는 방법에 대해서 알아보았는데요

자세한 내용은 아래 링크를 참고 해 주세요

 

[JAVA/JSP/Servlet]특정Servlet생성시 초기에 필요한 파라미터 설정하기(ServletConfig)

[JAVA/JSP/Servlet]특정Servlet생성시 초기에 필요한 파라미터 설정하기(ServletConfig) 안녕하세요 미나라이입니다. 이번에는 특정Servlet이 생성시 초기에 필요한 파라미터를 설정하는 방법에 대해서 포스

nameybs.tistory.com

 

웹 어플리케이션 프로젝트에는 여러개의 서블릿이 들어가는 경우가 있습니다.

여기서 양쪽 다 사용해야 하는 데이터가 필요 할 수도 있겠죠

이 경우에는 ServletContext라는 기능을 사용하면 편리한데요

web.xml에 한번만 선언해두고 여러 서블릿에서는 그것을 호출만 하면 됩니다.

일부러 서블릿마다 별도로 선언 할 필요가 없어지는것이죠

 

지금부터 간단하게 예제를 통해서 알아보는 시간을 가져봅시다.

 

ServletContext

web.xml에 다음과 같이 추가를 해 봅시다.

<web-app></web-app>태그 사이에 추가 하면 됩니다.

  <context-param>
  	<param-name>id</param-name>
  	<param-value>abcdefgh</param-value>
  </context-param>
  <context-param>
  	<param-name>path</param-name>
  	<param-value>C:\\test3</param-value>
  </context-param>

서블릿에서는 다음과 같이 선언해서 호출하면 됩니다.

String id = getServletContext().getInitParameter("id");
String path = getServletContext().getInitParameter("path");

서블릿을 2개 만들어서 양쪽에서 전부 호출이 가능한지 확인 해 봅시다.

Servlet1

System.out.println("Servlet1");
System.out.println("ID : " + getServletContext().getInitParameter("id"));
System.out.println("PATH : " + getServletContext().getInitParameter("path"));

URL로 확인 해 봅시다.

콘솔에도 제대로 찍혀있는지 확인 해 봅시다.

제대로 찍혀 있네요

Servlet2

System.out.println("Servlet2");
System.out.println("ID : " + getServletContext().getInitParameter("id"));
System.out.println("PATH : " + getServletContext().getInitParameter("path"));

URL로 확인 해 봅시다.

콘솔에도 제대로 찍혀있는지 확인 해 봅시다.

제대로 찍혀 있네요

샘플 프로젝트를 첨부합니다.

ServletContext.zip
0.01MB

 

 

이상으로 간단하게 공용 초기화 파라미터에 대해서 알아보았습니다.

 

 

728x90
반응형