본문으로 바로가기

서블릿의 라이프 사이클(2)

category 웹/JSP 2018. 10. 29. 20:48

이어서 설명드리겠습니다.

 

JSP에서도 init-parm 태그를 web.xml에 등록하여 사용 할 수 있습니다.

서블릿의 등록과 마찬가지로

<web-app>

<servlet>

<servlet-name>winners-jsp</servlet-name>

<jsp-file>/Winners.jsp</jsp-file>

<init-param>

<param-name>FILE_NAME</param-name>

<param-value>winner-list.txt</param-value>

</init-param>

</servlet>

<servlet-mapping>

<servlet-name>winners-jsp</servlet-name>

<url-pattern>/winners</url-pattern>

</servlet-mapping>

</web-app>

의 형태로 사용 할 수 있습니다. jsp-file태그는 무조건 경로명이므로 /로 시작하여야 합니다.

jsp파일에서 이 값을 가져오기 위해서는 getInitParameter("param-name에 지정해준 이름"); 메소드를 통해 가져올 수 있습니다.

 

서블릿의 환경 정보를 가져오는 방법에 대해 아시나요??

간단한 인터페이스의 객체를 통해서 쉽게 가져올 수 있습니다.

 

ServletContext 인터페이스 타입 객체를 이용하면 됩니다.

getServletContext 메서드를 호출하면 객체를 얻을 수 있습니다.

ServletContext context=getServletContext();

context.getServletInfo();를 호출 하면 정보가 리턴 됩니다.

 

또한 getMajorVersion 과 getMinorVersion메소드를 호출 하면 웹 컨테이너가 지원하는 서블릿 규격서 버전이 리턴 됩니다.

마찬가지로 JSP페이지에서도 가능한데요.

간단하게 application 애트리뷰트를 이용하시면 됩니다.

예를들어서

application.getServerInfo()를 호출하거나 application.getMajorVersion()을 호출 하시면 쉽게 얻을 수 있습니다.

직접 해보시기 바랍니다.

 

위에서 <init-param>태그를 이용해서 getInitParameter를 통해 초기화값을 얻어오는 형태를 봤습니다.

이와 달리 <context-param>태그를 이용하면 웹 애플리케이션 전체에 해당하는 초기화 파라미터를 기재 할 수 있습니다.

단 이때는 가져올 때 application.getInitParameter()를 이용해야합니다.

 

또한 로그메시지를 기록할 수 도 있습니다.

application.log("xxxxx"); 를 호출하면 localhost.yyyy-dd.log이름의 파일에 기록합니다.

 

또한 같은 웹 에플리케이션 내 데이터를 공유하고 싶다면 ???

바로 application.setAttribute 와 application.getAttribute 또한 제거 하고 싶다면 application.removeAttribute를 사용 하시면 됩니다.

application.setAttribute("ID","abc1234");로 키와 값 형태로 작성하고 다른 웹 컴포넌트에서는 application.getAttribute("ID");로 키를 통해 값을 가져올 수 가 있습니다.

또한 파일 경로명을 가져오고 싶다면 application.getContextPath()로 웹 에플리케이션의 URL을 받을 수 있고

application.getRealPath("/sub/intro.html")는 절대 경로명을 받을 수 있습니다.

 

 

 

' > JSP' 카테고리의 다른 글

익스프레션 언어(2)  (0) 2018.10.31
익스프레션 언어  (0) 2018.10.29
서블릿의 라이프 사이클  (0) 2018.10.24
JSP의 기초(2)  (0) 2018.10.03
JSP의 기초  (0) 2018.09.19