• ServletConfig接口

定义:public interface ServletConfig

这个接口定义了一个对象, 通过这个对象, Servlet 引擎配置一个 Servlet 并且允许 Servlet获得一个有关它的 ServletContext 接口的说明。每一个 ServletConfig 对象对应着一个唯一的Servlet。

方法:

1、getInitParameter

public String getInitParameter(String name);

这个方法返回一个包含 Servlet 指定的初始化参数的 String。 如果这个参数不存在, 返加空值。

2、getInitParameterNames

public Enumeration getInitParameterNames();

这个方法返回一个列表 String 对象,该对象包括 Servlet 的所有初始化参数名。如果Servlet 没有初始化参数,getInitParameterNames 返回一个空的列表。

3、getServletContext

public ServletContext getServletContext();

返回这个 Servlet 的 ServletContext 对象。







  • GenericServlet接口

public abstract class GenericServlet implements Servlet,ServletConfig, Serializable;

这个类的存在使得编写 Servlet 更加方便。它提供了一个简单的方案,这个方案用来执

行有关Servlet生命周期的方法以及在初始化时对ServletConfig对象和ServletContext对象进

行说明。

方法

1、destroy

public void destroy();

在这里 destroy 方法不做任何其他的工作。

2、getInitParameter

public String getInitParameter(String name);

这是一个简便的途径,它将会调用 ServletConfig 对象的同名的方法。

3、getInitParameterNames

public Enumeration getInitParameterNames();

这是一个简便的途径,它将会调用 ServletConfig 对象的同名的方法。

4、getServletConfig

public ServletConfig getServletConfig();

返回一个通过这个类的 init 方法产生的 ServletConfig 对象的说明。

5、getServletContext

public ServletContext getServletContext();

这是一个简便的途径,它将会调用 ServletConfig 对象的同名的方法。

6、getServletInfo

public String getServletInfo();

返回一个反映 Servlet 版本的 String。

7、init

public void init() throws ServletException;

public void init(ServletConfig config) throws ServletException;

init(ServletConfig config)方法是一个对这个 Servlet 的生命周期进行初始化的简便的途径。

init(ServletConfig config)方法会存储config对象然后调用init() 。 如果你重载了这个方法 ,你必须调用 super.init(config),这样 GenericServlet 类的其他方法才能正常工作。

init()方法是用来让你对 GenericServlet 类进行扩充的,使用这个方法时,你不需要存储config 对象,也不需要调用 super.init(config)。

8、 log

public void log(String msg);

public void log(String msg, Throwable cause);

通过 Servlet content 对象将 Servlet 的类名和给定的信息写入 log 文件中。

9、 service

public abstract void service(ServletRequest request, ServletResponse response) throws ServletException, IOException;

这是一个抽象的方法,当你扩展这个类时,为了执行网络请求,你必须执行它。



package javax.servlet;

import java.io.IOException;
import java.io.Serializable;
import java.util.Enumeration; public abstract class GenericServlet implements Servlet, ServletConfig, Serializable
{
//这里封装一个ServletConfig对象,每一个 ServletConfig 对象对应着一个唯一的Servlet。
private transient ServletConfig config; public void destroy()
{
} //这是一个简便的途径,它将会调用 ServletConfig 对象的同名的方法。以下3个方法都是:
public String getInitParameter(String name)
{
return getServletConfig().getInitParameter(name);
} public Enumeration getInitParameterNames()
{
return getServletConfig().getInitParameterNames();
} //Servlet引擎配置一个 Servlet,并且允许 Servlet,获得一个有关它的 ServletContext 接口的说明
public ServletContext getServletContext()
{
return getServletConfig().getServletContext();
} //我们常常在自己写的Servlet用这个方法,其实就是在这里被继承过去的
public ServletConfig getServletConfig()
{
return this.config;
} public String getServletInfo()
{
return "";
} //重写Servlet的init方法
public void init(ServletConfig config) throws ServletException
{
this.config = config;
init();
} public void init() throws ServletException
{
} public void log(String msg)
{
getServletContext().log(getServletName() + ": " + msg);
} public void log(String message, Throwable t)
{
getServletContext().log(getServletName() + ": " + message, t);
} //推迟到子类实现,这里仍然是抽象方法
public abstract void service(ServletRequest paramServletRequest, ServletResponse paramServletResponse) throws ServletException, IOException; public String getServletName()
{
return this.config.getServletName();
}
}

Servlet--ServletConfig接口,GenericServlet类的更多相关文章

  1. Servlet基础之一:Servlet基本接口与类

    1.概述 Servlet API中共有5个包,约113个接口和类: javax.servlet javax.servlet.http javax.servlet.jsp javax.servlet.a ...

  2. Servlet的接口实现类

    Sun公司提供了两个默认实现类 GenericServlet和HttpServlet HttpServlet指能够处理Http请求的Servlet,它在原有的Servlet基础上添加了与HTTp相关的 ...

  3. javax.servlet.ServletConfig接口(五)

    主要作用是保存web.xml文件里面的配置信息 一个servlet对应一个ServletConfig,100个servlet对应100个ServletConfig.   代码如下(单个获取和获取所有) ...

  4. Servlet各种接口和类

    http://blog.csdn.net/jediael_lu/article/details/25036019

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

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

  6. JavaWeb学习——Servlet相关的接口和类

    JavaWeb学习——Servlet相关的接口和类 摘要:本文主要学习了Servlet相关的接口和类. Servlet的接口和类 三种方式 实现Servlet有三种方式: 实现javax.servle ...

  7. Javaweb学习笔记——(九)——————Servlet的进入,及ServletConfig、GenericServlet、HttpServlet、ServletContext、获取类路径资源

    Servlet1.什么是Servlet? *Servlet是Javaweb三大组件之一(Servlet,Filter,Listener) *Servlet是用来处理客户端请求的动态资源 *Servle ...

  8. Servlet接口、GenericServlet类、HttpServlet类

    Servlet是最顶层的接口,其提供的方法有: init(ServletConfig config):void // 初始化 getServletConfig():ServletConfig // 取 ...

  9. javaWeb学习总结(3)- Servlet总结(servlet的主要接口、类)

    Servlet总结01——servlet的主要接口.类 (一)servlet类 Servlet主要类.接口的结构如下图所示: 要编写一个Servlet需要实现javax.servlet.Servlet ...

随机推荐

  1. 用call和ret实现子程序

    ret和call是另外两种转移指令,它们与jmp的主要区别是,它们还包含入栈和出栈的操作.具体的原理如下: ret操作相当于:pop ip(直接将栈顶元素赋值给ip寄存器) call s的操作相当于: ...

  2. 深入理解JVM(三)——配置参数

    JVM配置参数分为三类参数: 1.跟踪参数 2.堆分配参数 3.栈分配参数 这三类参数分别用于跟踪监控JVM状态,分配堆内存以及分配栈内存. 跟踪参数 跟踪参数用于跟踪监控JVM,往往被开发人员用于J ...

  3. 使用Three.js 基本组件以及流程

    1. 创建场景 var scene = new THREE.Scene(); 2. 创建相机,设置可视范围 var camera = new THREE.PerspectiveCamera(45,  ...

  4. Android权限管理知识学习记录

    一.Android权限背景知识 在Android 6.0之前,所申请的权限只需要在AndroidManifest.xml列举就可以了,从而容易导致一些安全隐患,因此,在Android 6.0时,Goo ...

  5. Centos环境下搭建Asp.NET Core环境和安装Jexus

       .NET Core2.0出来以后,很多公司开始用于实践生产,其中的原因想必大家都明白,最主要的一下几点. 跨平台,能够部署在Linux和Docker容器中 性能优越,测试时Node的20倍左右 ...

  6. 初窥Flask

    初窥Flask Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求 ...

  7. 洛谷 P3377 【模板】左偏树(可并堆)

    洛谷 P3377 [模板]左偏树(可并堆) 题目描述 如题,一开始有N个小根堆,每个堆包含且仅包含一个数.接下来需要支持两种操作: 操作1: 1 x y 将第x个数和第y个数所在的小根堆合并(若第x或 ...

  8. Python之排序算法:快速排序与冒泡排序

    Python之排序算法:快速排序与冒泡排序 转载请注明源地址:http://www.cnblogs.com/funnyzpc/p/7828610.html 入坑(简称IT)这一行也有些年头了,但自老师 ...

  9. Java中import及package的用法

    有些人写了一阵子 Java,可是对於 Java 的 package 跟 import 还是不 太了解很多人以為原始码 .java 档案中的 import 会让编译器把所 import 的程式通通写到编 ...

  10. hackerrank Diameter Minimization

    瞬间移动 题意:构造一个所有点出度都为m的有向图最小化图的直径. 显然转成m进制来做就好了. #include<queue> #include<cstdio> #include ...