先理一理大致的流程,我们的目的是客户端通过jsp页面请求web.xml中的数据。
首先,我们得在web.xml中定义初始化数据吧,不然用户就要请求空数据了。
那么,说到web.xml,究竟是个什么玩意呢?我也不是很清楚,也没怎么了解。
我只知道它是一个和web工程有关的配置文档,今天我们只要用到它配置一下Servlet就好了。
接下来,我们就创建这个web.xml吧。如何创建?很简单,只要创建一个Servlet,顺带勾选创建web.xml的选项就好了。
在哪里创建servlet?咋感觉你的问题一大堆啊,哥。哈哈哈!
在web工程Src文件夹下的任意位置都可以创建啊。那么问题又来了,,,
哥,别说了。我知道,web工程在哪里创建,对不对?
对你个大头鬼啊,web工程都不会创建,你还写什么web,这是最基础的好不好。
开篇到这里也就差不多了,没办法,有些人就是那么傻,哈哈哈,下面我从创建Web工程项目开始,给出整个实例的过程。
1 创建一个Web projecet,命名为 ServletGetInitParameter
2 修改 WebRoot -> index.jsp 的body内容为
<body>
<h1>获取初始化参数示例h1><br>
<a href="servlet/GetInitParameter">获取初始化参数a>
body>
3 在src下建一个包,在包下面建一个servlet类,命名为 GetInitParameter,当创建完之后在WebRoot->WEB-INF 下面就会生成web.xml。
4 打开web.xml,里面已经有servlet的默认配置了。要添加的自定义数据就加载里面。
添加自定义数据前servlet默认配置
This is the description of my J2EE component
name>This is the display name of my J2EE component name>
name>GetInitParameter name>
class>servlet.GetInitParameter class>
name>GetInitParameter name>
/servlet/GetInitParameter
添加自定义数据后的servlet默认配置,加了,其中包含了username变量和password变量的值。admin,123456
<servlet>
<description>This is the description of my J2EE componentdescription>
<display-name>This is the display name of my J2EE componentdisplay-name>
<servlet-name>GetInitParameterservlet-name>
<servlet-class>servlet.GetInitParameterservlet-class>
<init-param>
<param-name>usernameparam-name>
<param-value>adminparam-value>
init-param>
<init-param>
<param-name>passwordparam-name>
<param-value>123456param-value>
init-param>
servlet>
<servlet-mapping>
<servlet-name>GetInitParameterservlet-name>
<url-pattern>/servlet/GetInitParameterurl-pattern>
servlet-mapping>
5 在GetInitParameter Servlet 类中添加两个私有变量,username和password并创建各自的setter和getter方法。username和password分别用来保存web.xml中自定义的数据。
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
5 在init()方法中添加以下代码。getInitParameter()方法是获取web.xml中属于的接口方法。
public void init() throws ServletException {
// Put your code here
this.setUsername(this.getInitParameter("username"));
this.setPassword(this.getInitParameter("password"));
}
6 在doGet方法中添加以下代码。
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.println("用户名:"+this.username+"
");
out.println("密码:"+this.password);
7 文档通通保存。部署web工程并启动tomcat服务器。
打开浏览器,输入url:http://127.0.0.1:10086/ServletGetInitParameter/index.jsp
这边要说的是,服务器端口可以自己定义。我改的是10086,默认端口是8080。
正常的界面应该如下
点击 获取初始化参数
8 完了,就这样,实例演示完毕!我刚刚干了一件事情,我把之前图片上的水印都去掉了。