我的第一个Servlet程序和Servlet的生命周期函数

一、Servlet概念:

  Servlet(Server Applet),全称Java Servlet,未有中文译文。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的  Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。

Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。

二、第一个Servlet程序:

  创建一个HelloServlet类,继承Servlet接口,并实现接口的方法。public class HelloServlet implements Servlet{...}

package com.iflytek.servlet;
import java.io.IOException;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class HelloServlet implements Servlet {

    public HelloServlet(){
        System.out.println("constructor...");
    }

    @Override
    public void init(ServletConfig config) throws ServletException {
        System.out.println("init...");
    }

    @Override
    public void service(ServletRequest req, ServletResponse res)
            throws ServletException, IOException {
        System.out.println("service...");

    }

    @Override
    public ServletConfig getServletConfig() {
        System.out.println("getServletConfig...");
        return null;
    }

    @Override
    public String getServletInfo() {
        System.out.println("getServletInfo...");
        return null;
    }

    @Override
    public void destroy() {
        System.out.println("destroy...");
    }
}

三、配置web.xml文件(配置和映射Servlet)

<?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_2_5.xsd"
    id="WebApp_ID" version="2.5">

    <!-- 配置 和 映射 Servlet -->

    <!-- 配置 Servlet -->
    <servlet>
        <servlet-name>helloServlet</servlet-name>
        <servlet-class>com.iflytek.servlet.HelloServlet</servlet-class>
    </servlet>

    <!-- 映射 Servlet -->
    <servlet-mapping>
        <servlet-name>helloServlet</servlet-name>
        <url-pattern>/hello</url-pattern>
    </servlet-mapping>

</web-app>

四、启动Tomcat服务器,在地址栏输入 http://localhost:8080/test001_Servlet/hello。控制台输出信息如下:

五、Servlet 生命周期

  1. 构造器: 只被调用一次. 只有第一次请求 Servlet 时, 创建 Servlet 的实例. 调用构造器.这说明 Serlvet 的单实例的!
  2. init 方法: 只被调用一次. 在创建好实例后立即被调用. 用于初始化当前 Servlet.
  3. service: 被多次调用. 每次请求都会调用 service 方法. 实际用于响应请求的.
  4. destroy: 只被调用一次. 在当前 Servlet 所在的 WEB 应用被卸载前调用. 用于释放当前 Servlet 所占用的资源.

六、Servlet接口的源码:

package javax.servlet;

import java.io.IOException;

public interface Servlet {

    public void init(ServletConfig config) throws ServletException;

    public ServletConfig getServletConfig();

    public void service(ServletRequest req, ServletResponse res)
            throws ServletException, IOException;

    public String getServletInfo();

    public void destroy();

}
时间: 2024-10-24 23:15:17

我的第一个Servlet程序和Servlet的生命周期函数的相关文章

Servlet程序开发-- Servlet生命周期

生命周期是一个程序的存在周期,受容器管理,所以容器决定生命周期. 生命周期包括 加载,初始化,服务,销毁,卸载 5个部分 加载:第一次使用的时候加载 初始化:init方法, 失败的话,直接卸载,如果成功的话,进行服务的操作,如果服务不再使用,进行销毁再卸载 服务:service方法 销毁:destroy方法 代码: package org.lxh.servletdemo ; import java.io.* ; import javax.servlet.* ; import javax.serv

Servlet程序开发--Servlet 与 表单

servlet程序: doPost方法时为了防止表单提交时post方式的问题.否则只能处理get请求 package org.lxh.servletdemo ; import java.io.* ; import javax.servlet.* ; import javax.servlet.http.* ; public class InputServlet extends HttpServlet{ public void doGet(HttpServletRequest req,HttpSer

Servlet程序开发-- servlet跳转

跳转:服务器端,客户端 客户端跳转:<response.sendRedirect>地址栏跳转之后改变,无法传递request范围的属性 服务器端跳转:<jsp:forward>地址栏不改变,而且可以传递request范围的属性,属于无条件跳转,只要执行到了,立即执行跳转的操作 servlet之中也是可以跳转的,既然servlet本身存在HttpServletResonse对象,所以,直接通过此对象的sendRedirect方法就可以完成跳转操作. 客户端跳转实现: info不能传递

Servlet程序开发--Servlet简介

使用java语言开发的服务器端程序,可以生成动态web页,运行在服务器端,由服务器调用执行,是一种按照servlet标准开发的类. 先有servlet,后有jsp,jsp骨子里依然是servlet. CGI,公共网关接口,多进程的处理方式,Servlet是多线程处理方式,所以性能上比CGI强. 不管使用JSP,还是servlet,都是运行在服务器端,所以必须了解servlet的处理流程. 1. 客户端通过HTTP提出请求 2. web服务器接收请求并发送给servlet,如果没加载,服务器加载并

Servlet程序开发

1.本章目标 •了解Servlet的主要作用 •掌握Servlet的处理流程 2.Servlet简介 使用java语言编写的服务器端程序,可以生成动态的web页面,Servlet主要运行服务器端. 3.Servlet处理基本流程 客户端(很可能是web浏览器)通过HTTP提出请求 web服务器接收该请求并将其发送servlet.如果这个servlet尚未被加载,web服务器将把它加载到java虚拟机并且执行它. Servlet程序将接收该HTTP请求并执行某种处理 Servlet会将处理后的结果

JavaEE实战——Servlet入门、Servlet生命周期、绝对路径、ServletContext

前言 接下来的三篇博客我会分别介绍Servlet的以下三个方面: 1.Servlet程序编写 ----- 生命周期 2.ServletAPI Request Response 3.Cookie 和 Session Servlet的作用:Servlet 用来 动态web资源 开发 静态web资源 : 固定数据文件 动态web资源 : 通过程序动态生成数据文件 Servlet技术基于Request-Response编程模型 ---- HTTP协议也是基于请求响应 模型 * Servlet技术 用来

Servlet入门总结及第一个Servlet程序 (转载)

转载请注明出处http://blog.csdn.net/evankaka 一了解Servlet的概念 二Servlet技术功能 三 Servlet技术特点 四 Servlet生命周期 五servlet工作过程 六 Servlet与JSP区别 七Servlet代码结构 八 Servlet第一个程序 一.了解servlet 概念 Servlet定义:Servlet是基于Java技术的Web组件,由容器管理并产生动态的内容.Servlet引擎作为WEB服务器的扩展提供支持Servlet的功能.Serv

动手学servlet(1) 第一个servlet程序

1.文件>新建>动态WEB项目 "javaeedemo">在Java Resource的src下新建包“servletdemo”,包下新建一个类“MyServet”,另外在WebContent>WEB_INF下新建一个XML文件,这个是servlet的配置文件,稍后会用到 2.MyServet类必须继承HttpServlet,示例代码如下 package servletdemo; import java.io.IOException; import java.i

Servlet入门总结及第一个Servlet程序

目录 一了解Servlet的概念 二Servlet技术功能 三 Servlet技术特点 四 Servlet生命周期 五servlet工作过程 六 Servlet与JSP区别 七Servlet代码结构 八 Servlet第一个程序 一.了解Servlet的概念 Servlet定义:Servlet是基于Java技术的Web组件,由容器管理并产生动态的内容.Servlet引擎作为WEB服务器的扩展提供支持Servlet的功能.Servlet与客户端通过Servlet容器实现的请求/响应模型进行交互.