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:最近好久没有写点东西了,项目太紧,今天来一篇 一.本文简介 ...
随机推荐
- 1095 Cars on Campus——PAT甲级真题
1095 Cars on Campus Zhejiang University has 6 campuses and a lot of gates. From each gate we can col ...
- 导出----用Excel导出数据库表
根据条件导出表格: 前端 <el-form-item label=""> <el-button type="warning" icon=&qu ...
- 【死磕JVM】五年 整整五年了 该知道JVM加载机制了!
类加载 Java虚拟机类加载过程是把Class类文件加载到内存,并对Class文件中的数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的java类型的过程 和那些编译时需要连接工作的语言不 ...
- Markdown(1)介绍
一.简介 Markdown 是一种轻量级标记语言,通过简单的标记语法使纯文本内容具有一定格式,使用户可以用易读易写的纯文本格式编写文档. Markdown 语言在 2004 由约翰·格鲁伯(英 ...
- 【图像处理】使用OpenCV进行图像处理教程(一)
OpenCV是进行图像处理的工具,也是计算机视觉领域近十几年不断发展和完善的产物.面对这个已基本成熟的开源库知识体系,我们新生代有必要不断地总结.回顾,以新的视角快速融入计算机视觉的奥秘世界. 从这篇 ...
- 破解 Android 上 airpods 连接软件的pro版
0x00 起因 起因是在Android上用了一段时间的AndPods觉得不太好用之后,换到了另一个Play商店推荐的App.动画.连接和电量提示都用的很满意,就是每次连接的弹窗和APP里面都有广告,就 ...
- 机器学习系统或者SysML&DL笔记(一)
前言 在使用过TVM.TensorRT等优秀的机器学习编译优化系统以及Pytorch.Keras等深度学习框架后,总觉得有必要从理论上对这些系统进行一些分析,虽然说在实践中学习是最快最直接的(指哪儿打 ...
- C#的foreach遍历循环和隐式类型变量
C#的foreach遍历循环和隐式类型变量 foreach遍历循环 foreach (<baseType> <name> in <array>>) { //c ...
- 关于个Base64,MD5,16进制的转换
1,待签名数据以UTF-8的格式转字节流,对字节流进行MD5算法得到的签名字节流,再转换为16进制字符串,即生成了数字签名. byte[] targetData = md5.ComputeHash(S ...
- kubernetes生产实践之mysql
简介 kubedb mysql 生命周期及特性 Supported MySQL Features Features Availability Clustering ✓ Persistent Volum ...