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:最近好久没有写点东西了,项目太紧,今天来一篇 一.本文简介 ...
随机推荐
- io流+网络+线程池 实现简单的多客户端与服务器端通信
1 import java.io.IOException; 2 import java.io.InputStream; 3 import java.io.OutputStream; 4 import ...
- ELK的一点认识
为什么需要ELK: 一般大型系统是一个分布式部署的架构,不同的服务模块部署在不同的服务器上,问题出现时,大部分情况需要根据问题暴露的关键信息,定位到具体的服务器和服务模块,构建一套集中式日志系统,可以 ...
- 翻译:《实用的Python编程》02_05_Collections
目录 | 上一节 (2.4 序列) | 下一节 (2.6 列表推导式) 2.5 collections 模块 collections 模块为数据处理提供了许多有用的对象.本部分简要介绍其中的一些特性. ...
- Java常用类:Arrays类
一.简介 全类名:java.util.Arrays 描述: 此类包含用来操作数组(比如排序和搜索)的各种方法. 此类还包含一个允许将数组作为列表来查看的静态工厂. 注意: 除非特别注明,否则如果指定数 ...
- Git 提交获取项目与提交项目 记录
首先去git官网下载版本安装:https://git-scm.com/downloads 在自己生产免密令牌,安装后用git程序导出. 1.自己在桌面或者某盘创建一个文件夹,在文件夹右键找到 GIt ...
- JAVA基础(一)—— 基础类型与面向对象
JAVA基础(一)--基础类型与面向对象 1 数据类型 基本类型 byte short int long float double boolean char n 8 16 32 64 32 64 tr ...
- SSRF攻击原理
目录 什么是SSRF 原理 防护 什么是SSRF 一个对外的Web接口,改接口能让用户控制curl命令,去访问别的web服务. 简图如下 想象一下当用户请求的baidu.com/x.php?image ...
- 剑指 Offer 13. 机器人的运动范围 + 深搜 + 递归
剑指 Offer 13. 机器人的运动范围 题目链接 package com.walegarrett.offer; /** * @Author WaleGarrett * @Date 2020/12/ ...
- 25个关键技术点,带你熟悉Python
摘要:本文收纳了Python学习者经常使用的库和包,并介绍了Python使用中热门的问题. 01.Python 简介 什么是 Python 一种面向对象的高级动态可解释型脚本语言. Python 解释 ...
- C# 应用 - 多线程 3) Task.Factory
1. 与 Task.Run() 的区别: 先看一下源码: public class Task : IThreadPoolWorkItem, IAsyncResult, IDisposable { pu ...