zoukankan      html  css  js  c++  java
  • 第7章:Servlet 基础

     1.什么是Servlet:

    其实就是一个类,主要负责处理用户的请求和做到数据的相应以及页面的跳转,基于Java技术的Web组件

    2.JSP和Servlet的关系

    JSP首先转换为.java文件,被JVM编译成一个.class,其实上他俩就是一个东西 JSP负责进行页面数据的渲染 Servlet处理请求和相应

    3.Servlet的创建配置启动

    1.实现Servlet接口 init():初始化

    Servlet 默认Servlet的初始化在首次访问到Servlet时进行初始化操作,可以通过<load-on-stratup>控制初始化顺序,如果这个节点为负数或者不配置则是默认的初始化顺序 如果这个节点的值正数,则根据数的大小进行初始化操作,也就是说在服务启动的时候会初始化Servlet,并且值越小初始化操作越先执行

    getServletConfig()获取Servlet配置信息

    service()负责处理用户的请求和相应

    当每一次请求到Servlet时会执行service()方法

    getServletInfo()获取Servlet信息

    destroy()销毁 当项目服务停止时会将Servlet容器中装载的所有Servlet释放掉

    访问Servlet:

    1.配置Web.xml <!-- 同一个Servlet在Web.xml当中有两项配置 -->

    <servlet>

    <!--Servlet名称-->

    <servlet-name>DemoServlet</servlet-name>

    <!--对应Servlet的路径(全路径)-->

    <servlet-class>com.demo.servlet.DemoServlet</servlet-class>

    <!--设置Servlet初始化时机-->

    <load-on-startup>1</load-on-startup>

    </servlet> <servlet-mapping>

    <!--映射的名字-->

    <servlet-name>DemoServlet</servlet-name>

    <!--暴露给用户的访问地址,并且可以多个-->    

      <url-pattern>/DemoServlet</url-pattern>

    </servlet-mapping>

    2.注解

    //我们通过Servlet模板生成的注解默认是只有一个访问地址,如果说要加上其他配置信息,需要以键值对方式体现出来 @WebServlet("/DemoServlet")

    @WebServlet(loadOnStartup=1,urlPatterns= {"/DemoServlet","/yyy"})

    3.注意问题:

    web.xml和注解方式可以同时存在,但是name和url必须是不相同的,否则会报错

    Servlet和JSP都是单例的,但是现在如果两种方式同时存在,那么创建了两个

    2.方式二:继承GenericServlet类

    service()负责处理用户的请求和相应 在GenericServlet类中已经对Servlet接口中的4个方法进行了重写,所以子类不需要再次重写其余4个方法

    3.方式三:继承HttpServlet

    主要关注两个方法:

    doGet(HttpServletRequest request, HttpServletResponse response);

    doPost(HttpServletRequest request, HttpServletResponse response);

  • 相关阅读:
    几张图就把 Kubernetes Service 掰扯清楚了
    一文读懂 Kubernetes APIServer 原理
    K8S调度系统由浅入深系列:简介
    K8S蓝绿部署:Blue/Green Deployments on Kubernetes
    K8s Nginx Ingress 介绍
    探索 Kubernetes HPA
    [译]走进Kubernetes集群的大脑:Etcd
    AIX文件系统大小限制调整(转)
    修改SSH服务监听端口,引起服务启动失败原因分析
    Docker-compos部署nextcloud私有网盘
  • 原文地址:https://www.cnblogs.com/Chencheno/p/11143644.html
Copyright © 2011-2022 走看看