Servlet声明周期和部署web.xml

一、什么事Servlet 

 Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页。Servlet下有一个实现类叫HttpServlet,一个普通的java如果继承了HttpServlet类,覆盖了它的doGet和doPost方法,那么这个普通类也可以叫做Servlet。Servlet是sun公司提供的一门用于开发动态web资源的技术。Sun公司在其API中提供了一个servle接口,用户若想用发一个动态web资源(即开发一个Java程序向浏览器输出数据),需要完成以下两个步骤:

  • 编写一个Java类,实现servlet接口。
  • 把开发好的Java类部署到web服务器中。

二、Servlet的生命周期
tomcat服务器什么时候创建servlet对象?什么时候销毁对象?什么时候调用了什么方法?!
其实也就是这样的一个过程 :

  1.        Servlet对象的创建。
  2.       Servlet对象执行某些方法来给我们服务。
  3.       Servlet对象的销毁。

而这个过程有4个很核心的方法需要执行:
构造方法:    servlet对象创建时调用。默认情况下,第一次访问servlet时,servlet对象创建。只被调 用1次。servlet在tomcat服务器中是单实例的。
init方法:      在创建完servlet对象之后被调用。用于对servlet对象进行初始化。只调用1次。
service方法    每次发出请求时被调用。调用n次。
destroy方法  在tomcat服务器停止或者web应用重新加载时调用。只调用1次。

三、web.xml 文件部署

<servelet>
        <!-- 给Servlet取名,可以任意取名 -->
        <servelet-name>Hello</servelet-name>
        <!-- 指明servlet的路径,就是servlet的包+类名 -->
        <servlet-class>com.lyjs.Hello</servlet-class>
</servelet>
<servelet-mapping>
        <!-- 给Servlet取名,可以任意取名 -->
        <servelet-name>Hello</servelet-name>
        <!-- 浏览器中输入的url,可以随意取名 -->>
        <url-pattern>/Hello</url-pattern>
</servelet-mapping>
时间: 2024-10-11 14:23:38

Servlet声明周期和部署web.xml的相关文章

java基础 第十四章(Servlet声明周期、Servlet向jsp中提供数据、Servlet跳转jsp、jsp中书写java代码)

一.Servlet声明周期 1.Servlet的声明周期一般分为四步:加载.实例化.服务.销毁. 2.实例化在整个生命周期中只执行一次. 二.jsp 1.Servlet向jsp中提供数据 request.setAttribute( , ); 例:request.setAttribute("key" , "Hello"); 2.Servlet跳转jsp (1)同一请求方式:request.getRequestDispatcher("/路径").fo

servlet/jsp学习04 读取web.xml参数

1初始化参数init-param init-param是配置在web.xml的<servlet>标签里的,也就是说,是归该servlet单独所有的. 实例 <servlet> <servlet-name>ContextParamServlet</servlet-name> <servlet-class>com.servlet.ContextParamServlet</servlet-class> </servlet> &l

Servlet声明周期小结

Servlet配置及生命周期方法 关于Servlet容器: 1.可以来创建Servlet并调用Servlet相关的生命周期的方法 2.JSP,Filter,Listener,Tag...(都有Servlet容器管理,并运行,提供环境支持) 3.Servlet生命周期的方法:(以下方法都是Servlet容器负责调用) 3.1 构造器方法:第一次请求Servlet时创建Servlet的实例,调用构造器,第二次在请求时不再创建构造器,依次类推,Servlet是单实例(线程安全的),只被调用一次 3.2

servlet 3.0无需配置web.xml,使用注入方式配置servlet实现登陆功能(服务器需要支持servlet3.0)

首先申明上面的报错红叉,我也不知道怎么回事.总之能运行. 新建项目时选择java EE6.0,低版本没有servlet3.0. 先看一个基本示例. Test.java是用来测试无需配置文件,无需静态页面(jsp,html) 直接访问servlet来从服务器上获取信息. Test.java代码 1 package com.gys; 2 3 import java.io.IOException; 4 import java.io.PrintWriter; 5 6 import javax.servl

6、jsp和servlet在xml得映射和web.xml介绍

本身肯定会学的东西,今天想起来了,那就记一下吧. 做那个后端的界面时候,有人反应不要hou.jsp,说设个路由随便编乱点,别人猜不到.我也没听懂设个路由是什么意思. 最后一想,这不就是个jsp映射嘛. jsp映射和servlet映射就一条不同,servlet还可以通过@WebServlet(“”)方法. 顺便转载一下web.xml的介绍,方便以后查看 转载自:http://blog.csdn.net/believejava/article/details/43229361 Web.xml详解:

web.xml中关于Servlet、Filter、Listener的配置

(一)web.xml不同元素的加载顺序 加载顺序与它们在 web.xml 文件中的先后顺序无关.即不会因为 filter 写在 listener 的前面而会先加载 filter. web.xml 的加载顺序是:ServletContext -> context-param -> listener -> filter -> servlet ,而同个类型之间的实际程序调用的时候的顺序是根据对应的 mapping 的顺序进行调用的 (二)web.xml文件详解 (2.1) 首先是sche

web.xml 之contextParam,listener,filter,servlet的加载顺序

先以加载spring为例子看看加载顺序的作用: Spring加载可以利用ServletContextListener 实现,也可以采用load-on-startup Servlet 实现,但比如filter 需要用到 bean ,但加载顺序是: 先加载filter 后加载spring,则filter中初始化操作中的bean为null:所以,如果过滤器中要使用到 bean,此时就可以根据加载顺序listener>filter>servlet,将spring 的加载 改成 Listener的方式.

关于jsp servlet web.xml

一Servlet入门总结及第一个Servlet程序 http://m.blog.csdn.net/article/details?id=45151569 二<servlet-name>,<servlet-class>,<servlet-mapping>,<url-pattern>,这些各表示什么 首先这四个都是注册一个servlet组件必须的四个节点<servlet-name> 这个是我们要注册servlet的名字,一般跟Servlet类名有关&

web.xml中servlet的配置

<servlet>元素是配置Servlet所用的元素. <servlet-mapping>元素在Servlet和URL样式之间定义一个映射,即servlet类提供一个url,在地址栏输入对应的映射路径就可以访问你的servlet. 下面给出一段配置代码: <servlet> <servlet-name>ServletName</servlet-name> <servlet-class>xxxpackage.xxxServlet<