JAVAEE_Servlet_05_ServletConfig接口
ServletConfig接口
- 研究javax.servlet.ServletConfig接口
1.javax.servlet.ServletConfig是一个接口
2.Apache Tomcat服务器实现了Servlet规范,专门写了一个ServletConfig接口的实现类。
3.Tomcat服务器是一个实现了Servlet规范 和 JSP规范 的容器
4.ServletConfig具体是什么?
- ServletConfig是Servlet对象的配置信息对象,也就是说一个ServletConfig中封装了一个Servlet对象的配置信息,例如Servlet的名字,参数,上下文等等。
- Servlet对象的配置信息写在web.xml文件中,web.xml被封装在ServletConfig对象中。
- 一个Servlet对象,对应着一个ServletConfig对象,100个Servlet对象,对应着100个ServletConfig对象
5. 配置<init-param>参数,该参数可以通过ServletConfig对象获取到
<servlet>
<servlet-name>ServletConfig01</servlet-name>
<servlet-class>com.servlet.ServletConfig01</servlet-class>
<init-param> <!-- 初始化参数 ,被封装到ServletConfig对象中了-->
<param-name>driver</param-name>
<param-value>com.mysql.cj.jdbc</param-value>
</init-param>
</servlet>
6.ServletConfig中有哪些常用的方法?
- String getInitParameter(String name) 通过初始化参数定义的 name 获取 value ,即获取 <param-value>com.mysql.cj.jdbc</param-value>
例如:
String initParameterValue1=AServletConfige.getInitParameter("driver"); // com.mysql.jabc.Driver
String initParameterValue2=AServletConfige.getInitParameter("url"); // jdbc:mysql://127.0.0.1:3306/scott?serverTimezone=UTC
- Enumeration getInitParameterNames() 获取所有初始化参数的name 即获取 <param-name>driver</param-name>
例如:
Enumeration<String> names=config.getInitParameterNames(); 将所有的name放在Enumeration 集合中
//遍历集合
while(names.hasMoreElements()){ //如果 names.hasMoreElements()有数据,那面就是true
String name=names.nextElement();
String value=config.getInitParameter(name); //通过获取到的name获取与之对应的value
System.out.println(name+":"+value); // 输出 <key:value>
}
}
- String getServletName() 获取ServletName. 即获取 <servlet-name>ServletTestB</servlet-name>
例如:
String ServletName = config.getServletName();
System.out.println(ServletName);
- ServletCotext getServletContext() 获取Servlet上下文对象
例如:
ServletContext BServletContext = config.getServletContext();
System.out.println(BServletContext.toString());
JAVAEE_Servlet_05_ServletConfig接口的更多相关文章
- App开发:模拟服务器数据接口 - MockApi
为了方便app开发过程中,不受服务器接口的限制,便于客户端功能的快速测试,可以在客户端实现一个模拟服务器数据接口的MockApi模块.本篇文章就尝试为使用gradle的android项目设计实现Moc ...
- 干货来袭-整套完整安全的API接口解决方案
在各种手机APP泛滥的现在,背后都有同样泛滥的API接口在支撑,其中鱼龙混杂,直接裸奔的WEB API大量存在,安全性令人堪优 在以前WEB API概念没有很普及的时候,都采用自已定义的接口和结构,对 ...
- 12306官方火车票Api接口
2017,现在已进入春运期间,真的是一票难求,深有体会.各种购票抢票软件应运而生,也有购买加速包提高抢票几率,可以理解为变相的黄牛.对于技术人员,虽然写一个抢票软件还是比较难的,但是还是简单看看123 ...
- Java基础Map接口+Collections工具类
1.Map中我们主要讲两个接口 HashMap 与 LinkedHashMap (1)其中LinkedHashMap是有序的 怎么存怎么取出来 我们讲一下Map的增删改查功能: /* * Ma ...
- Java基础Map接口+Collections
1.Map中我们主要讲两个接口 HashMap 与 LinkedHashMap (1)其中LinkedHashMap是有序的 怎么存怎么取出来 我们讲一下Map的增删改查功能: /* * Ma ...
- java基础_集合List与Set接口
List接口继承了Collection的方法 当然也有自己特有的方法向指定位置添加元素 add(索引,添加的元素); 移除指定索引的元素 remove(索引) 修改指定索引的元素 set ...
- 【WCF】自定义错误处理(IErrorHandler接口的用法)
当被调用的服务操作发生异常时,可以直接把异常的原始内容传回给客户端.在WCF中,服务器传回客户端的异常,通常会使用 FaultException,该异常由这么几个东东组成: 1.Action:在服务调 ...
- PHP以接口方式实现多重继承(完全模拟)--学习笔记
1.UML类图: 2.PHP代码: <?php /** * Created by PhpStorm. * User: andy * Date: 16-11-23 * Time: 下午7:57 ...
- 【微框架】Maven +SpringBoot 集成 阿里大鱼 短信接口详解与Demo
Maven+springboot+阿里大于短信验证服务 纠结点:Maven库没有sdk,需要解决 Maven打包找不到相关类,需要解决 ps:最近好久没有写点东西了,项目太紧,今天来一篇 一.本文简介 ...
随机推荐
- DisplayFormat属性
DataFormatString="{0:格式字符串}" 在DataFormatString 中的 {0} 表示数据本身,而在冒号后面的格式字符串代表所们希望数据显示的格式: 数字 ...
- nginx日志文件切分
定义cut_nginx_log.sh 日志文件脚本如下 #!/bin/bash#LOGS_PATH为日志存放路径LOGS_PATH=/weblog/nginx/logsYESTERDAY=$(date ...
- 微信小程序:block标签
代码中存在block标签,但是渲染的时候会移除掉. 例子: 如果将view改为block: 当你要渲染某些数据时,如果不想额外的加一层外边的标签,此时可以使用block标签来进行占位.
- 零信任三大技术之SDP
SDP概述 SDP Software Defined Perimeter(软件定义边界),2013 年由云安全联盟 CSA提出. SDP 设计基本原则 1.信息隐身:隐藏服务器地址.端口,使之不被扫描 ...
- Gradle 差异化构建
Compile 默认的依赖方式,任何情况下都会依赖. Provided 只提供编译时依赖,打包时不会添加进去. Apk 只在打包Apk包时依赖,这个应该是比较少用到的. TestCompile 只在测 ...
- POJ-3468(线段树+区间更新+区间查询)
A Simple Problem With Integers POJ-3468 这题是区间更新的模板题,也只是区间更新和区间查询和的简单使用. 代码中需要注意的点我都已经标注出来了,容易搞混的就是up ...
- 05.从0实现一个JVM语言之目标平台代码生成-CodeGenerator
从0实现JVM语言之目标平台代码生成-CodeGenerator 源码github仓库, 如果这个系列文章对你有帮助, 希望获得你的一个star 本节相关代码生成package地址 阶段性的告别 非常 ...
- [Elementary Mechanics Using Python-02]Feather in tornado
Problem 9.17 Feather in tornado. In this project you will learn to use Newton's laws and the force m ...
- SVHN数据集 Format1 剪裁版
SVHN数据集官网:http://ufldl.stanford.edu/housenumbers/ SVHN数据集官方提供的有两种格式 Format1是那种在街上拍的照片,每张照片的尺寸都不同,然后l ...
- 我的2019年总结和一些2020年的flag
我的2019年总结和一些2020年的flag 前言 2019年在我的人生中注定是里程碑的一年,主要是我毕业了.本篇总结主要聊一些2019年经历的事以及对于自己2020年的期待 1. 再见2019 1. ...