본문 바로가기
Back-end/웹(web)

[웹] 서블릿 초기화 파라미터

by javapp 자바앱 2020. 5. 22.
728x90

유지 보수 관점에서 변경 가능한 파라미터를 DD(Deployment Descriptor) 읽어 들어 사용

 

 

서블릿 초기화 파라미터 : 해당 서블릿만 접근 가능

Context 초기화 파라미터는 웹 어플리케이션을 구성하는 모든 컴포넌트

 

Context 초기화 파라미터

<context-param>

<param-name>adminEmail</param-name>

<param-value>admin@admin.com</param-value>

</context-param>

 

String contextEmailcontextEmail= getServletContext getInitParametergetInitParameter("adminEmailadminEmail");
out .printf("contextEmailcontextEmail: % s< br >", contextEmailcontextEmail);

 

 


 

<servlet>

<servlet-name>helloWorld</servlet-name>

<servlet-class>com.web.servlet.HelloWorld</servlet-class>

<init-param>

<param-name>admin</param-name>

<param-value>userName</param-value>

</init-param>

<init-param>

<param-name>pwd</param-name>

<param-value>1234</param-value>

</init-param> <!-- 이것을 어노테이션으로 대체-->

</servlet>

<servlet-mapping>
<servlet-name>helloWorld</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>

 

어노테이션 방법 / 위치

 

예1)

 

import java ....

@WebServlet(

    urlPatterns= {"/hello"}, //해당 서블릿 맵핑

    initParams= {

       @WebInitParam(name = "admin", value = "userName"),

       @WebInitParam(name = "pwd", value = "1234")  //Init param 정의

   }

)

public class ... exteds HttpServlet{



}

 


예2)

@WebServlet("/scope")

public class Controller extends HttpServlet{

   @Override

   protected void doGet....



}

댓글