您好我正在阅读一本关于Servlet的书,这本书使用 context-param 和 init-param 但他没有提供如何使用它的示例他只是用几个字解释它可以有人给我一个关于如何使用它的例子以及为什么我需要它在我的xml文件中:我不是在谈论 servlet-name 和 servlet-class 我在谈论另外两个参数
<context-param>
<param-name>custEmail</param-name>
<param-value>isadfj@gmail.com</param-value>
</context-param>
<servlet>
<servlet-name>addEmailListServlet</servlet-name>
<servlet-class>email.addEmailListServlet</servlet-class>
<init-param>
<param-name>reletivePathFile</param-name>
<param-value>/WEB-INF/Email.txt</param-value>
</init-param>
</servlet>
答案 0 :(得分:1)
它们是初始参数,您可以使用init(c:ServletConfig):void
方法获取它们,一旦容器实例化servlet,它将调用init方法并将web.xml
文件提供的初始参数包含在实例中。 / p>
因此,他们不做任何魔法或任何事情,只是初始参数,当需要在servlet生命开始时需要进行配置时,它们非常有用,例如默认电子邮件,或池大小,或外部路径名,任何东西
例如
<init-param>
<param-name>sys_mail</param-name>
<param-value>root@my-daemon.com</param-value>
</init-param>
servlet的位置
public void init(ServletConfig c) throws ServletException{
c.getInitParameter("sys_mail");//this will return root@my-daemon.com
}
答案 1 :(得分:1)
因为您要发送InitParameter
来自Servlet的请求
this.myParam = servletConfig.getInitParameter("myParam");
然后对于Access,我们可以映射到Web.xml
,如: -
<init-param>
<param-name>myParam</param-name>
<param-value>paramValue</param-value>
</init-param>
来Context Parameters
方面。这里我们通过了Servlet的请求:
String myContextParam =request.getSession().getServletContext().getInitParameter("myParam");
然后,对于Access myContextParam
,我们可以映射到web.xml
,如: -
<context-param>
<param-name>myParam</param-name>
<param-value>the value</param-value>
</context-param>