ServletConfig是一个接口,有关配置文件的

servlet的配置信息<---对应--->ServletConfig

web.xml配置文件会被加载到内存中,然后解析器会对它进行解析,解析完(把信息)封装到了这个类中(面向对象的思想)。这一块是由Tomcat来完成

1个ServletConfig对象,对应一段web.xml中的Servlet的配置信息。

接口中的方法:

  String  getServletName();---一般没用,获取的是<servlet-name>中的内容,也就是获取  

  上图中的BServlet字段,随便起的名字。

  ServletContext  getServletContext():获取Servlet上下文对象!

  String  getInitParameter(String name):通过名称获取指定初始化参数的值。

  Enumeration  getInitParameterNames():返回值是一个集合,获取所有初始化参数的名称。

代码举例:

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"> <servlet>
<servlet-name>xxx</servlet-name>
<servlet-class>one.servlet.AServlet</servlet-class>
<init-param><!-- 两个参数信息 -->
<param-name>p1</param-name>
<param-value>v1</param-value>
</init-param>
<init-param>
<param-name>p2</param-name>
<param-value>v2</param-value>
</init-param>
</servlet> <servlet-mapping>
<servlet-name>xxx</servlet-name>
<url-pattern>/AServlet</url-pattern><!-- url的模式,即以什么样来访问,最终浏览器访问 -->
</servlet-mapping> </web-app>

AServlet.java片段

在init方法中,因为该方法中由ServletConfig对象,然后获取初始化的参数和名称

 @Override
public void init(ServletConfig servletConfig) throws ServletException {
//第一个被Tomcat调用,然后会给它传参数ServletConfig
System.out.println("init()...");
/*
* 获取初始化参数
* */
System.out.println(servletConfig.getInitParameter("p1"));
System.out.println(servletConfig.getInitParameter("p2"));
//获取初始化参数名称
Enumeration e=servletConfig.getInitParameterNames();
while(e.hasMoreElements()){
System.out.println(e.nextElement());
}
}

浏览器请求结果,控制台的结果

init()...
v1
v2
p2
p1
service()...

  

真正有用的是ServletContext  getServletContext()方法

相关类中还有ServletRequest接口(请求)和ServletResponse接口(响应)

接口,由Java提供的

javax.servlet下的

方法返回的是接口的实现类对象

实现类由Tomcat提供

在这你所见到的接口,自己没有写过它的实现类,它的实现类由Tomcat提供。

如:Servlet是接口,我们只写该类,并没有实例化,是Tomcat提供的实例化对象。

Servlet的相关类--ServletConfig(接口)的更多相关文章

  1. Servlet及相关类和接口

    上一篇介绍了在Web项目中web.xml文件的配置信息,本篇主要介绍里面非常重要的配置——Servlet配置,重点介绍与Servlet相关的几个接口和类,包括Servlet接口.ServletConf ...

  2. Web---演示Servlet的相关类、下载技术、线程问题、自定义404页面

    Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数. ServletContext – 代表整个Web项目. ServletRequest – 代表用户的 ...

  3. Web---演示Servlet的相关类、表单多参数接收、文件上传简单入门

    说明: Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数. ServletContext – 代表整个Web项目. ServletRequest – 代 ...

  4. Servlet主要相关类核心类 容器调用的过程浅析 servlet解读 怎么调用 Servlet是什么 工作机制

      WEB简介   Web项目 是 B/S结构 浏览器/服务器模式的 浏览器发起请求,服务器作出响应   请求的发起和响应使用HTTP协议进行通讯 所谓协议也就是一种固定格式   而Socket是应用 ...

  5. Eclipse检出原MyEclipse项目后 javax.servlet.http相关类都报错【我,体现着一类jar包问题的处理方法】

    用Eclipse检出原来为myEclipse搭建的一个项目,检出后,所有关于httpservlet的类都报异常,说有没实现的方法? 但这个项目之前人家用MyEclipse运行都是没有问题的, 按住CT ...

  6. Hibernate的常用关键类以及接口介绍

    上一篇初步的对Hibernate进行了认识,并测试了Hibernate的HelloWorld, 这里主要介绍HibernateTest类中的相关类和接口,以及其作用和特性,关于Session中的相关方 ...

  7. Java基础之Java常用类--Object类,字符串相关类,包装类,日期相关类,数字相关类

    Java是一种面向对象的语言,也就是将万事万物可以描述为对象,特点如下: 1.面向对象是常见的一种思考习惯,符合人们的思考习惯.2.面向对象的出现,将复杂的事情简单化.3.面向对象的出现,将之前过程中 ...

  8. Servlet API遍程常用接口和类

    本文主要总结Servlet  API遍程常用接口和类 Servlet API http://tomcat.apache.org/tomcat-5.5-doc/servletapi/index.html ...

  9. JavaWeb知识回顾-Servlet常用类、接口及其方法

    今天主要把servlet的一些常用的类.接口和方法简单回顾一下. javax.servlet包 1.javax.servlet.Servlet接口 接口用于开发servlet,所有的servlet都要 ...

随机推荐

  1. laravel 跨库执行原生 sql 语句

    执行原生 sql 返回结果集

  2. 使用 gcc 编译 libvmaf-1.3.9 时的 注意事项

    vmaf-1.3.9\wrapper\Makefile 首行添加 CXX = g++CC = gcccc = gcc CFLAGS_COMMON 行尾追加 -msse4.1 CFLAGS_COMMON ...

  3. keepalive半同步双主一从

    ip地址如下: 192.168.20.201 redis01 主 192.168.20.202 redis02 主 192.168.20.203 redis03 从 192.168.20.205 vi ...

  4. Vue项目中,要保证某个部分的高度,应该怎么设置

    .icons overflow: hidden height: padding-bottom: % background: green

  5. AD证书导入文档(单向认证)

    AD证书或者SSL证书导入的方法步骤(在root用户下操作) 1.  将证书命名为AD-PRO.cer,并确定证书的颁发. 2.  将/app/ad_cert/keystore下的原有证书删除掉和文件 ...

  6. js的逆向解析

    过程: 知道如何寻找登录的接口 知道如何确定js的位置 知道如何观察js的执行过程 知道js的执行方法 1. 确定网站的登录的接口登录的form表单中action对应的url地址通过抓包可以发现,在这 ...

  7. 11 个超棒的 jQuery 分步指引插件

    当一个网站或者一个Web应用推出新功能时,为了让用户了解你的站点(或应用)如何操作,往往都会在站点(应用)中添加一个分步指引的效果.然而这样的效果,对于不懂原生JS的同学来说,是件很头痛的事情. 下面 ...

  8. node20180927

    1. fs读文件.写文件 // 1 fs读文件 var fs = require('fs') fs.readFile('./20180926 demo/a.text', function (err, ...

  9. Linux系统挂载Windows系统下的共享文件

    声明:本文是小编借鉴大神们的经验,仅供学习使用. 第一步:在Windows系统上选择要共享的文件夹,右击“属性”-“共享”-“高级共享”-勾选“共享此文件”-设置共享名-“权限”-“添加”-“高级”- ...

  10. vue加载优化策略

    vue.js是一个比较流行的前端框架,与react.js.angular.js相比来说,vue.js入手曲线更加流畅,不管掌握多少都可以快速上手.但是单页面应用也都有其弊病,有时候首屏加载慢的让人捏舌 ...