zoukankan      html  css  js  c++  java
  • Servlet

    Servlet的概述

    什么是Servlet:

        是运行在服务器端的一小的Java程序,接收和响应从客户端发送请求.

    Servlet的作用:

        处理客户端的请求,并且对请求作出响应.

    servlet请求

    ![servlet请求][1]

    servlet函数

    实现HttpServlet重写下面方法
        init(var1);          服务器初始化,调用的函数,一般用于加载配置文件
        service(req,resp);   请求先访问的是service函数,判断后调用了对应的doXxx()函数;
        doGet(req,resp);     可以通过req对象获取客户端的数据调用service层,响应给客户端;
        doPost(req,resp);    可以通过req对象获取客户端的数据调用service层,响应给客户端;
        destroy();           servlet销毁时执行

    servlet在web.xml配置

    Servlet请求路径:
        配置格式:
          <servlet>
             <servlet-name>servlet名称</servlet-name>
             <servlet-class>全限定名(就是servlet文件路径)</servlet-class>
          </servlet>
          <servlet-mapping>
             <servlet-name>servlet名称</servlet-name>
             <url-pattern>浏览器请求路径</url-pattern>
          </servlet-mapping>

    Servlet初始化配置:
        在servlet标签有一个子标签 load-on-startup
        作用:用来修改servlet的初始化时机(就是Servlet类的init()方法执行时机)
        取值:正整数    值越大优先级越底
        1)load-on-startup元素标记容器是否在启动的时候就加载这个servlet(实例化并调用其init()方法)。

        2)它的值必须是一个整数,表示servlet应该被载入的顺序

        2)当值为0或者大于0时,表示容器在应用启动时就加载并初始化这个servlet;

        3)当值小于0或者没有指定时,则表示容器在该servlet被选择时才会去加载。

        4)正数的值越小,该servlet的优先级越高,应用启动时就越先加载。

        5)当值相同时,容器就会自己选择顺序来加载。

        所以,<load-on-startup>x</load-on-startup>,中x的取值1,2,3,4,5代表的是优先级,而非启动延迟时间。

    servlet生命周期

    生命周期指的是一个对象从创建到销毁的过程.
        Servlet的生命周期,Servlet对象从创建到销毁的过程.
        客户端第一次访问该Servlet的时候才会创建一个Servlet的对象,那么Servlet中的init方法就会执行.任何一次从客户端发送的请求,那么服务器创建一个新的线程执行Servlet中service方法为这次请求服务.
        service方法的内部根据请求的方式的不同调用不同doXXX的方法.当Servlet从服务器中移除或者关闭服务器的时候Servlet对象就会被销毁.destroy的方法就会执行.

    servlet内置对象

     - request          请求
     - response         响应
     - servletConfig      Servlet所在的WEB应用的配置信息。
     - servletContext   上下文对象(全局管理者)
     - cookie           客户端的会话技术
     - session          服务端的会话技术
  • 相关阅读:
    pl/sql developer中如何导出oracle数据库结构? 参考文章一
    ORACLE知识点整理之一
    WebService之第一天
    Eclipse中,open declaration;open implementation;open super implementation的区别
    Maven 手动添加 JAR 包到本地仓库
    clipse maven 项目 出现红色叹号 解决方法
    eclipse快捷键设置
    Hibernate3--快速入门--第一天
    C++ 虚函数表解析
    c++ primer复习(二)
  • 原文地址:https://www.cnblogs.com/sybk/p/10004744.html
Copyright © 2011-2022 走看看