• Servlet的创建和配置


    Servlet的创建

    1、实现 Servlet 接口

    因为是实现 Servlet 接口,所以我们需要实现接口里的方法。

     1 //Servlet的生命周期:从Servlet被创建到Servlet被销毁的过程
     2 //一次创建,到处服务
     3 //一个Servlet只会有一个对象,服务所有的请求
     4 /*
     5  * 1.实例化(使用构造方法创建对象)
     6  * 2.初始化  执行init方法
     7  * 3.服务     执行service方法
     8  * 4.销毁    执行destroy方法
     9  */
    10 public class ServletDemo1 implements Servlet {
    11 
    12     //public ServletDemo1(){}
    13 
    14      //生命周期方法:当Servlet第一次被创建对象时执行该方法,该方法在整个生命周期中只执行一次
    15     public void init(ServletConfig arg0) throws ServletException {
    16                 System.out.println("=======init=========");
    17         }
    18 
    19     //生命周期方法:对客户端响应的方法,该方法会被执行多次,每次请求该servlet都会执行该方法
    20     public void service(ServletRequest arg0, ServletResponse arg1)
    21             throws ServletException, IOException {
    22         System.out.println("hehe");
    23 
    24     }
    25 
    26     //生命周期方法:当Servlet被销毁时执行该方法
    27     public void destroy() {
    28         System.out.println("******destroy**********");
    29     }
    30 //当停止tomcat时也就销毁的servlet。
    31     public ServletConfig getServletConfig() {
    32 
    33         return null;
    34     }
    35 
    36     public String getServletInfo() {
    37 
    38         return null;
    39     }
    40 }

     

    2、继承 GenericServlet 类

    它实现了 Servlet 接口除了 service 的方法,不过这种方法我们极少用。

    1 public class ServletDemo2 extends GenericServlet {
    2 
    3     @Override
    4     public void service(ServletRequest arg0, ServletResponse arg1)
    5             throws ServletException, IOException {
    6         System.out.println("heihei");
    7 
    8     }
    9 }

     

    3、继承 HttpServlet 方法

     1 import java.io.IOException;
     2  
     3 import javax.servlet.ServletException;
     4 import javax.servlet.http.HttpServlet;
     5 import javax.servlet.http.HttpServletRequest;
     6 import javax.servlet.http.HttpServletResponse;
     7  
     8 public class Servlet5 extends HttpServlet {
     9     @Override
    10     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    11  
    12         doPost(req, resp);
    13     }
    14  
    15     @Override
    16     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    17         resp.getWriter().write("hello,servlet5...");
    18     }
    
    

    Servlet配置

    1、 传统web.xml文档中部署servlet

    1 <servlet>
    2 <servlet-name>LifeServlet</servlet-name>//创建的servlet名字
    3  <servlet-class>servlet.LifeServlet</servlet-class>//完整的包名+类名
    4  </servlet>
    5 <servlet-mapping>//映射配置
    6  <servlet-name>LifeServlet</servlet-name>//和上面的名字保持一致
    7  <url-pattern>/LifeCycle</url-pattern>//servlet的映射路径
    8  </servlet-mapping>

    注意:如果有form表单和servlet有关联,<url-pattern>后面应填入与action参数相同,例如

    <form action=”LifeCycle” method=”post”>

    则<url-pattern>/LifeCycle</url-pattern>=


    2、 注解方式部署servlet

    1 @WebServlet("/LifeServlet")
    2 public class LifeServlet extends HttpServlet{}

    从浏览器发送请求时,会直接寻找@WebServlet后对应的url地址,调用并执行相应的servlet

  • 相关阅读:
    自动化测试-18.selenium之bugFree代码注释
    自动化测试-16.selenium数据的分离之Excel的使用
    自动化测试-15.selenium单选框与复选框状态判断
    自动化测试-14.selenium加载FireFox配置
    自动化测试-13.selenium执行JS处理滚动条
    Lucas-Kanade算法总结
    迟来的2013年总结及算法工程师/研究员找工作总结
    Android从文件读取图像显示的效率问题
    Viola Jones Face Detector
    谈谈Android中的SurfaceTexture
  • 原文地址:https://www.cnblogs.com/znjy/p/14170821.html
Copyright © 2020-2023  润新知