Javaservlet中初始化参数的使用
servlet中init参数的用途是什么?我知道这个名字本身就意味着初始化一些东西,但我的问题是什么 在servlet web.xml中使用init参数还有其他好处吗Javaservlet中初始化参数的使用,java,servlets,Java,Servlets,servlet中init参数的用途是什么?我知道这个名字本身就意味着初始化一些东西,但我的问题是什么 在servlet web.xml中使用init参数还有其他好处吗 我尝试在网上搜索,但找不到它的确切用法。我有一个servlet过滤器,当给定一个特殊的URL参数时,它必须绕过正常的授权流程。与用java硬编码该参数不同,在web.xml中声明该参数的优点是可以随时更改它 一般来说,所有最适合声明的设置都是相同的:超时、最大可接受图像大小、缓冲区大小。“几乎永恒”的常数 在一种情况下,servl
我尝试在网上搜索,但找不到它的确切用法。我有一个servlet过滤器,当给定一个特殊的URL参数时,它必须绕过正常的授权流程。与用java硬编码该参数不同,在web.xml中声明该参数的优点是可以随时更改它 一般来说,所有最适合声明的设置都是相同的:超时、最大可接受图像大小、缓冲区大小。“几乎永恒”的常数 在一种情况下,servlet可以保持完全通用,但密钥名称是特定于业务应用程序(=人类客户端)的:
x.y.general.servlets.MyGenericServlet -> neutral library code
x.y.clients.abc -> ABC specific code
web.xml:
<servlet>
<servlet-name>My Servlet</servlet-name>
<servlet-class>x.y.general.servlets.MyGenericServlet</servlet-class>
<init-param>
<description>For ABC</description>
<param-name>keyName</param-name>
<param-value>ABC_ID</param-value>
</init-param>
</servlet>
我的Servlet
x、 y.general.servlets.MyGenericServlet
美国广播公司
关键字
ABC\U ID
用法是在servlet初始化时为其提供固定的参数值。web.xml
<servlet>
<servlet-name>MySMSServlet</servlet-name>
<description>Send a sms</description>
<servlet-class>com.x.y.SendSMS</servlet-class>
<init-param>
<param-name>cellnumber</param-name>
<param-value>5555-0000</param-value>
<description>SMS target</description>
</init-param>
<init-param>
<param-name>text</param-name>
<param-value>server start</param-value>
<description>SMS text</description>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
import javax.servlet.http.HttpServlet;
public class SendSMS extends HttpServlet {
private static final long serialVersionUID = 100L;
@Override
public void init() {
String cellNumber = getServletConfig().getInitParameter("cellnumber");
String text = getServletConfig().getInitParameter("text");
new SMSProvider().sendSMS(cellNumber, text);
}
}