通过Servlet获取初始化参数
获取初始化参数
在web.xml中配置Servlet时,可以配置一些初始化参数。而在Servlet中可以通过ServletConfig接口提供的方法来获取这些参数。(其实还可以通过ServletContext来获得参数,只不过ServletConfig获得的参数是容器启动的时候就初始化的,而ServletConfig是Servlet类调用init()函数的时候才初始化的)。
因为我们的初始哈参数是配置在servlet里面的,所以我们这里以username为例,我们假设要在我们的moonlit servlet中添加一个初始化属性username,我们可以在web.xml中对应的servlet中添加init-param属性,如下:
<init-param>
<param-name>username</param-name>
<param-value>moonlit</param-value>
</init-param>
完整的web.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>WebProject</display-name> <servlet>
<servlet-name>moonlit</servlet-name>
<servlet-class>com.moonlit.MoonlitServlet</servlet-class>
<init-param>
<param-name>username</param-name>
<param-value>moonlit</param-value>
</init-param>
</servlet> <servlet-mapping>
<servlet-name>moonlit</servlet-name>
<url-pattern>/getinit.do</url-pattern>
</servlet-mapping> </web-app>
web.xml
然后我们就可以在moonlit servlet对应的类中通过getParameter()方法获得username这个初始化参数对应的值,如下:
String username = this.getInitParameter("username");
完成的MoonlitServlet类:
package com.moonlit; import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; @SuppressWarnings("serial")
public class MoonlitServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
PrintWriter out = resp.getWriter();
String username = this.getInitParameter("username");
out.println("<html>"
+ "<head><title>moonlit servlet</title></head>"
+ "<body>" + username + "</body>"
+ "</html>");
} @Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doGet(req, resp);
}
}
MoonlitServlet.java
然后我们可以通过对应的url-pattern访问到这个servlet对应的网页。
效果如下:

通过Servlet获取初始化参数的更多相关文章
- JavaWeb---通过ServletConfig获取Servlet的初始化参数
package com.zyz; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import j ...
- 从以下哪一个选项中可以获得Servlet的初始化参数。
从以下哪一个选项中可以获得Servlet的初始化参数. A.Servlet B.ServletContext C.ServletConfig D.GenericServlet 解答:C servlet ...
- Servlet之初始化参数和传递数据(ServletConfig,ServletContext )
ServletConfig 容器初始化一个Servlet的时候,会为这个Servlet建一个唯一的Servletconfig的对象(Servlet的配置对象) 容器会从部署的描述文件(web.xml) ...
- servlet_获取初始化参数
在web.xml的<servlet>标签中增添 <init-param> <param-name>XXX</param-name> <param- ...
- application 从web.xml中获取初始化参数
<span style="font-size:24px;"> </span> 1.web.xml中的配置部分 <context-param> ...
- 获得Servlet的初始化参数
通过ServletConfig接口的getInitParameter(java.lang.String name)方法
- web.xml中servlet初始化参数的设置
<context-param><param-name>param1</param-name><param-value>value1</param- ...
- javaee学习-servlet初始化参数
1.需要定义ServletConfig对象来接收servlet配置的初始化参数. 2.当servlet配置了初始化参数后,web容器在创建servlet实例对象时, 会自动将这些初始化参数封装到Ser ...
- 回顾servlet生命周期(代码测试),读取初始化参数
servlet生命周期 为简洁,本例使用注解方式来测试,代码部分很简单,只需要新建一个serlet,继承自HttpServlet,重写init,doGet,doPost,destory方法即可,使用注 ...
随机推荐
- SDL视频显示进阶
原文地址:http://blog.csdn.net/qingkongyeyue/article/details/53024467 1.SDL中事件和线程(函数同时运行) 2.练习 (1)创建线程 第一 ...
- MS SQL自定义函数IsPositiveInteger MS SQL自定义函数IsNumeric 水晶报表使用IEnumerable<T>数据源
MS SQL自定义函数IsPositiveInteger 判断字符串是否为正整数,0开始的的数字不算. SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON ...
- 详解C#泛型(二) 获取C#中方法的执行时间及其代码注入 详解C#泛型(一) 详解C#委托和事件(二) 详解C#特性和反射(四) 记一次.net core调用SOAP接口遇到的问题 C# WebRequest.Create 锚点“#”字符问题 根据内容来产生一个二维码
详解C#泛型(二) 一.自定义泛型方法(Generic Method),将类型参数用作参数列表或返回值的类型: void MyFunc<T>() //声明具有一个类型参数的泛型方法 { ...
- JNI调用之本地库文件的安装
在进行JNI调用的时候.是由java的本地接口调用本地库文件来完毕的,可是本地库文件须要放置到指定位置.JNI接口才干调用到,这个路径是由JVM的系统变量"java.library.path ...
- VC版DoEvents
VB和C#下有一个DoEvents方法,可以让程序在执行操作的同时仍可以处理其他事件.由于近期在做一个数据格式转换的项目,需要进行大批量的数据处理,希望能在进行数据读写过程中,程序还能接收其他操作,防 ...
- Aperture Time与NPLC
NPLC工频周期数 NPLC是采样电源的周期倍数,N代表是多少倍,PLC与采样电源有关 交流电源的干扰是很厉害的.为了减少交流电源的干扰,一个常用的方法就是把测量周期尽可能的取成交流周波的整数倍,这样 ...
- Unity和安卓互调
Unity调安卓 AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); And ...
- atitit.故障排除------有时会错误com.microsoft.sqlserver.jdbc.SQLServerException: Connection reset by peer: soc
atitit.故障排除------有时会错误com.microsoft.sqlserver.jdbc.SQLServerException: Connection reset by peer: soc ...
- tornado WebSocket详解
1.什么是WebSocketwebsocket和长轮询的区别是客户端和服务器之间是持久连接的双向通信.协议使用ws://URL格式,但它在是在标准HTTP上实现的. 2.tornado的WebSock ...
- JS四种方法去除字符串最后的逗号
<script> window.onload=function() { var obj = {name: "xxx", age: 30, sex: "fema ...