JavaWeb核心编程之(三.3)Servlet Init 配置
Servlet初始化 可以传入一些参数 通过 <init-param>来配置
新建 servletinit项目
新建包 com.xiaoan.test->new Class(TestInit.java)
package com.xiaoan.test; import java.io.IOException;
import java.util.Enumeration; import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse; public class TestInit implements Servlet{ @Override
public void destroy() {
// TODO Auto-generated method stub } @Override
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
return null;
} @Override
public String getServletInfo() {
// TODO Auto-generated method stub
return null;
} @Override
public void init(ServletConfig arg0) throws ServletException {
//通过参数名获取参数值
String username = arg0.getInitParameter("username");
System.out.println("username: " + username); //获得所有的参数名 String 对象的 Enumeration
Enumeration<String> paramName = arg0.getInitParameterNames();
while(paramName.hasMoreElements()){
String param = paramName.nextElement();
String paramvalue = arg0.getInitParameter(param);
System.out.println(param + ": " + paramvalue);
} //获得servletname 了解
String servletname = arg0.getServletName();
System.out.println("servletName: " + servletname);
} @Override
public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
// TODO Auto-generated method stub } }
配置web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>servletinit</display-name> <servlet>
<servlet-name>si</servlet-name>
<servlet-class>com.xiaoan.test.TestInit</servlet-class> <init-param>
<param-name>username</param-name>
<param-value>xiaoan</param-value>
</init-param>
<init-param>
<param-name>password</param-name>
<param-value>123456</param-value>
</init-param> <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>si</servlet-name>
<url-pattern>/si</url-pattern>
</servlet-mapping>
</web-app>
@Override
public void init(ServletConfig arg0) throws ServletException {
}
参数中ServletConfig: 封装了Servlet的配置信息, 并可以获取到ServletContext对象
1>配置Servlet的初始化参数
在<servlet>里面配置Servlet的初始化参数,并且必须放到load-on-startup的前面
<init-param>
<param-name>key</param-name>
<param-value>val</param-value>
</init-param>
按照以上格式可以配置多个初始化参数
2>获取初始化参数
获取初始化参数值
getInitParameter(String name)
以 String 对象的 Enumeration 的形式返回 servlet 的初始化参数的名称
getInitParameterNames()
返回此 servlet 实例的名称
getServletName()
JavaWeb核心编程之(三.3)Servlet Init 配置的更多相关文章
- JavaWeb核心编程之(三.4)Servlet Context 配置
ServletContextServlet引擎为每个Web应用程序都创建一个对应的ServletContext对象, ServletContext对象被包含在ServletConfig对象中, 调用S ...
- JavaWeb核心编程之(三.2)Servlet配置
Servlet配置 1.配置Serlvet加载时机 2.配置多映射 配置加载时机 新建项目config->创建包com.xiaoan.config->创建类FirstServlet imp ...
- JavaWeb核心编程之(三.6)HttpServlet
之前都是集成的Servlet真的太过于繁琐了, Servlet接口提供了一个实现类 为HttpServlet 只要实现doGet 和doPost方法就可以了 仍然以一个表单为例 新建一个web工程 ...
- JavaWeb核心编程之(三.5)HTTP请求和接受表单数据
HTTP简介WEB浏览器与WEB拂去其之间的一问一答的交互过程, 必须遵循一定的规则,这个规则就是HTTP协议HTTP是hypertext transfer protocol(超文本传输协议)的简写, ...
- JavaWeb核心编程之(三.1)ServletHello
Servlet简介Java Servlet是和平台无关的服务器端组件,它运行在Servlet容器中. Servlet容器负责Servlet和客户的通信以及调用Servlet方法, 在这里Servlet ...
- JavaWeb学习总结(三)—Servlet
1. 什么是Servlet * Servlet是JavaWeb三大组件之一(Servlet.Filter.Listener) ,Servlet是用来处理客户端请求的动态资源,按照一种约定俗成的称呼习惯 ...
- JavaWeb学习笔记(三)—— Servlet
一.Servlet概述 1.1 什么是Servlet Servlet是是sun公司提供一套规范(接口),是JavaWeb的三大组件之一(Servlet.Filter.Listener),它属于动态资源 ...
- JavaWeb核心编程之(四.1)JSP
JSP简介: JSP是简化Servlet编写的一种技术, 它将Java代码和HTML语句混合在一个文件中编写, 只对网页中药动态产生的内容采用Java代码来编写, 而对固定不变的静态内容采用普通的静态 ...
- 【1】python核心编程 第三章
1.继续( \ ) 有两种例外情况一个语句不使用反斜线也可以跨行.在使用闭合操作符时,单一语句可以跨多行,例如:在含有小括号.中括号.花括号时可以多行书写.另外就是三引号包括下的字符串也可以跨行书写 ...
随机推荐
- POJ 3468 A Simple Problem with Integers(线段树区间求和)
Description You have N integers, A1, A2, ... , AN. You need to deal with two kinds of operations. On ...
- 图像、帧、片、NALU概念理解
图像.帧.片.NALU 是学习 H.264 的人常常感到困惑的一些概念. H.264 是一次概念的革新,它打破常规,完全没有 I 帧.P帧.B 帧的概念,也没有 IDR 帧的概念.对于 H.264 中 ...
- C# Winform下载文件并显示进度条
private void btnDown_Click(object sender, EventArgs e) { DownloadFile("http://localhost:1928/We ...
- HTML注释简介
HTML注释简介 在编写HTML代码时,我们经常要在一些关键代码旁做一下注释,这样做的好处很多,比如:方便理解.方便查找或方便项目组里的其它程序员了解你的代码,而且可以方便以后你对自己代码进行修改 ...
- QT-Creator C/C++ 打地鼠小游戏
废话少说先上图: 这个游戏纯属土鳖思路,没有用到什么游戏引擎. 1.使用按钮或QLabel铺满窗口. 2.通过简单算法随机动态的设置按钮矩阵中某个按钮的背景图像. 3.同步2过程反复设置多个按钮背景实 ...
- Excel 用row()函数 在Excel中自动添加序号,
1.如图 2.用if条件根据产品名称判断是否有值进而序号自动添加 If(G9="","",Row()-8)
- iOS设计模式解析(五)责任链模式
责任链模式:使多个对象都有机会处理请求,从而避免发送者和接受者之间发生耦合. 应用场景: 有多个对象可以处理请求,而处理程序只有在运行时才能确定 例如: 英雄联盟中伤害计算,伤害类型分为AP.AD.真 ...
- 【MVC】过滤器
APS.NET MVC中(以下简称“MVC”)的每一个请求,都会分配给相应的控制器和对应的行为方法去处理,而在这些处理的前前后后如果想再加一些额外的逻辑处理.这时候就用到了过滤器. MVC支持的过滤器 ...
- 安装ConEmu
ConEmu可以提供比Windows自带控制台(cmd.exe)程序更多的功能,从其官网下载安装程序时选择预览版安装包(Preview, Installer)即可.
- 管道通信之无名管道---pipe()
pipe()函数在子进程产生之前就应该存在. 父子进程之间只进行一次传递 /*============================================ > Copyright ( ...