美文网首页
<JavaWeb>Servlet接口与实现类(上)

<JavaWeb>Servlet接口与实现类(上)

作者: 普通一般社会人 | 来源:发表于2016-04-18 07:49 被阅读596次

Servlet生命周期

我们如果想要在Servlet处理逻辑之前做一些准备工作,或者在Servlet实例被销毁之前做一些资源回收工作,就需要依靠Servlet的生命周期来进行准确的定位。

Servlet的生命周期主要包括三个阶段:初始化,请求处理,销毁。

初始化

对应init方法,默认在客户端第一次请求Servlet时,对应的Servlet实例才会被Servlet容器创建。这个时候,Servlet容器就会回调Servlet init方法,但在特殊情况下,比如在配置文件中,配置了loadonSetup元素,就会在容器启动时被加载。

    public void init() throws ServletException {
        // TODO Auto-generated method stub
        super.init();
    }
请求处理

对应service方法,在这个方法里会根据HTTP请求的类型,将不同的HTTP请求转发给不同的Servlet方法进行处理,比如,doGet方法和doPost方法。

    protected void service(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException {
        // TODO Auto-generated method stub
        System.out.println("service method");
        super.service(arg0, arg1);
    }
销毁

对应destroy方法,在Servlet实例被销毁之前,由Servlet容器进行回调。主要是做资源的回收和清理。

    public void destroy() {
        // TODO Auto-generated method stub
        super.destroy();
    }

doGet方法和doPost方法的区别

传输方式

GET方法通过HTTP header进行传输,POST方法通过HTTP body进行传输。
GET方法传输数据需要在URL中体现出来,数据长度受限于URL的长度(2-8k),POST方法不需要。

设计目的

GET方法是为了从服务器端获取数据,而POST方法则是为了向服务器端发送数据。

安全性

POST方法安全性更高一些,因为它并不暴漏数据。

配置参数

ServletConfig对象提供了Servlet配置信息的管理功能。我们可以把需要使用的配置信息写在对应的文件中,然后通过ServletConfig对象读取对应的配置信息。
在web.xml文件中,填写对应的配置信息。

<servlet>//只是添加到含有servlet-class和servlet-name的标签中
    <init-param>
        <param-name>参数名</param-name>
        <param-value>参数值</param-value>
    </init-param>
</servlet>

然后,我们就可以从java文件中获取对应的配置信息了。

ServletConfig config = this.getServletConfig();
String v1 = config.getInitParameter("name1");

特性总结:

Servlet在初始化过程中,<init-param>参数将被封装到ServletConfig对象中,每个Servlet支持设置一个或多个<init-param>对象,并且以Servlet为单位,并不全局共享。

相关文章

  • <JavaWeb>Servlet接口与实现类(上)

    Servlet生命周期 我们如果想要在Servlet处理逻辑之前做一些准备工作,或者在Servlet实例被销毁之前...

  • <JavaWeb>Servlet接口与实现类(下)

    Servlet共享配置信息 数据库的配置信息一般是有多个Servlet共享的,那么在这种情况下,上一份笔记中的方法...

  • Servlet规范总结

    Servlet接口 Servlet规范的核心接口即是Servlet接口,它是所有Servlet类必须实现的接口,在...

  • Servlet与Jsp(1)

    Servlet 实现原理Servlet接口使Servlet容器能将Servlet类载入内存,并在Servlet实例...

  • JavaWeb-Servlet

    Servlet 1. servlet的基本使用: 定义一个类,实现Servlet接口 实现接口中的抽象方法 配置S...

  • JavaWeb--Servlet体系结构

    Servlet->Servlet体系根接口GenericServlet->Servlet抽象实现类HttpServ...

  • Servlet

    最重要的是javax.servlet.Servlet接口Servlet就是一种实现了Servlet接口的类 Ser...

  • Servlet及容器

    狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,...

  • Servlet 实例

    Servlet 是服务 HTTP 请求并实现 javax.servlet.Servlet 接口的 Java 类。W...

  • 四、 Servlet详解

    1. Servlet核心接口和类 在Servlet体系结构中,除了实现Servlet接口,还可以通过继承Gener...

网友评论

      本文标题:<JavaWeb>Servlet接口与实现类(上)

      本文链接:https://www.haomeiwen.com/subject/owtalttx.html