zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    《Machine Learning in Action》—— 白话贝叶斯,“恰瓜群众”应该恰好瓜还是恰坏瓜
    《Machine Learning in Action》—— 女同学问Taoye,KNN应该怎么玩才能通关
    《Machine Learning in Action》—— Taoye给你讲讲决策树到底是支什么“鬼”
    深度学习炼丹术 —— Taoye不讲码德,又水文了,居然写感知器这么简单的内容
    《Machine Learning in Action》—— 浅谈线性回归的那些事
    《Machine Learning in Action》—— 懂的都懂,不懂的也能懂。非线性支持向量机
    《Machine Learning in Action》—— hao朋友,快来玩啊,决策树呦
    《Machine Learning in Action》—— 剖析支持向量机,优化SMO
    《Machine Learning in Action》—— 剖析支持向量机,单手狂撕线性SVM
    JVM 字节码指令
  • 原文地址:https://www.cnblogs.com/znjy/p/14170821.html
Copyright © 2011-2022 走看看