• javaWeb之Servlet详解


    Servlet详解

    1.servlet简单介绍

      servlet是javaweb三大组件之一,他与filter  ,listener  共同组成了javaweb的三大组件,Servlet(Server Applet)是Java Servlet的简称,解释为运行在服务器端的java小程序,

      作用:用来接收客户端的请求,处理业务逻辑,响应动态内容

    2.使用

      创建一个java类,实现Servlet接口,重写抽象方法

     1 public class MyServlet implements Servlet {
     2     /**
     3      * Servlet初始化的时候执行
     4      */
     5     @Override
     6     public void init(ServletConfig config) throws ServletException {
     7         // TODO Auto-generated method stub
     8         
     9     }
    10     /**
    11      *请求来的时候执行
    12      */
    13     @Override
    14     public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
    15         // TODO Auto-generated method stub
    16         
    17     }
    18     /**
    19      * Servlet销毁的时候执行
    20      */
    21     @Override
    22     public void destroy() {
    23         // TODO Auto-generated method stub
    24         
    25     }
    26 
    27     @Override
    28     public String getServletInfo() {
    29         // TODO Auto-generated method stub
    30         return null;
    31     }
    32     @Override
    33     public ServletConfig getServletConfig() {
    34         // TODO Auto-generated method stub
    35         return null;
    36     }
    37 
    38 }

    3.Servlet的生命周期(Servlet对象是单例的)

      创建:默认情况下,当请求来的时候,服务器会检查该类的对象有没有被创建,如果没有创建,服务器会反射创建该类的对象,并且调用init方法完成初始化的操作,然后调用serivce 方法完成相应的业务逻辑

      服务:请求来一次就服务一次

      销毁:当服务器正常关闭或者项目卸载的时候会销毁该Serlvet对象

     1 /**
     2      * Servlet初始化的时候执行
     3      * 执行时机:默认情况下,当你去请求服务器的时候,服务器会检查有没有该Servlet对象,
     4      *             如果没有,就会反射创建该类对象,并执行init方法完成初始化操作,紧接着调用
     5      *             service方法完成服务
     6      * 执行次数:1次
     7      */
     8     @Override
     9     public void init(ServletConfig config) throws ServletException {
    10         // TODO Auto-generated method stub
    11         
    12     }
    13     /**
    14      *服务:
    15      *执行时机:请求一次执行一次
    16      *执行次数:多次
    17      *
    18      */
    19     @Override
    20     public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
    21         // TODO Auto-generated method stub
    22         
    23     }
    24     /**
    25      *销毁
    26      *执行时机:服务器关闭或者是项目卸载的时候,会调用该方法
    27      *执行次数:1次
    28      */
    29     @Override
    30     public void destroy() {
    31         // TODO Auto-generated method stub
    32         
    33     }

    4.Servlet在web.xml中的配置详解

    图解配置文件执行流程

    url-pattern的写法
      1.精确匹配写法 必须/打头 后面自定义 /aa/bb /aa/ccc/dddd 
      2.目录匹配写法 必须/打头 中间自定义 以/*结尾 /aa/* /aaa/dd/*
      3.后缀名匹配写法 必须*.打头 *.jsp *.action *.do

    load-on-startup配置项
      修改servlet的默认初始化时机 servlet将会在服务器启动的完成加载

      <load-on-startup>正整数</load-on-startup>
      正整数:如果值越小优先级越高

    defaultservlet:
      路径 /
      匹配上所有的资源 但是优先级最低

      你不管的他管
      你管不了的它管

     5.Servlet运行流程

  • 相关阅读:
    【集合遍历-Java】
    【eclipse】使用说明
    【Java IO流】浅谈io,bio,nio,aio
    【Mysql数据库】知识点总结
    【struts2】学习笔记
    【EL&JSTL】学习笔记
    思科交换机-常用命令及配置
    【JDBC-MVC模式】开发实例
    【JDBC】java连接MySQL数据库步骤
    【JDBC】Servlet实例
  • 原文地址:https://www.cnblogs.com/xuzhaocai/p/8395413.html
Copyright © 2020-2023  润新知