1. 概念

  Servlet是指任何实现了Servlet接口的类, Servlet运行于支持Java的应用服务器中,

  Servlet可以响应任何类型的请求, 但大多数情况下, Servlet只用来扩展基于HTTP协议的Web服务器

  Servlet的实现遵循了服务器能够识别的规则, 也就是服务器会自动的根据请求调用对应的Servlet进行请求处理

2. 创建步骤

  1. 创建普通Java类, 并继承HttpServlet类

  2. 重写service方法, 并在service方法中写需要的逻辑代码

  3. 在web.xml文件中配置Servlet

3. 运行流程

  浏览器发送请求到服务器, 服务器根据请求的URL地址中的URI信息,

  在Tomcat服务器中的webapps目录下找到对应的项目文件夹, 然后在web.xml中检索对应的Servlet,

  找到后调用并执行Servlet

4. 生命周期

  Servlet的生命周期从第一次调用开始到服务器关闭结束,

  如果在web.xml中配置了load-on-startup, 则Servlet的生命周期会从服务器开启到服务器关闭

  init() 方法是对Servlet进行初始化的方法, 会在Servlet第一次加载时执行,

  destory() 方法是在Servlet被销毁时执行的方法

  

5. web.xml中配置Servlet

<servlet>
<servlet-name>DemoServlet</servlet-name>
<servlet-class>magical.demo.servlet.DemoServlet</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>DemoServlet</servlet-name>
<url-pattern>/demo</url-pattern>
</servlet-mapping>

6. service(), doGet(), doPost()的区别

  service() :

    不管是get方式还是post方式的请求, 如果Servlet类中有service()方法, 则优先调用service()方法

  doGet() :

    在没有service()方法的情况下, 如果是get请求, 就会调用doGet()方法

  doPost() :

    在没有service()方法的情况下, 如果是post请求, 就会调用doPost()方法

  

Servlet - Servlet相关的更多相关文章

  1. Web---演示Servlet的相关类、下载技术、线程问题、自定义404页面

    Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数. ServletContext – 代表整个Web项目. ServletRequest – 代表用户的 ...

  2. Servlet主要相关类核心类 容器调用的过程浅析 servlet解读 怎么调用 Servlet是什么 工作机制

      WEB简介   Web项目 是 B/S结构 浏览器/服务器模式的 浏览器发起请求,服务器作出响应   请求的发起和响应使用HTTP协议进行通讯 所谓协议也就是一种固定格式   而Socket是应用 ...

  3. org.apache.cxf.transport.servlet.CXFServlet cannot be cast to javax.servlet.Servlet

    java.lang.ClassCastException: org.apache.cxf.transport.servlet.CXFServlet cannot be cast to javax.se ...

  4. sae Servlet class XXXX is not a javax.servlet.Servlet

    以前都是使用myeclipse开发web工程上传sae后没有问题,但是使用javaee导出war包上传sae 无法访问 Servlet class  XXXX is not a javax.servl ...

  5. cannot be cast to javax.servlet.Servlet

    在第一次开发Maven项目时,maven环境和仓库以及eclipse都和讲师讲解的一样,可是却遇到下面这个问题: java.lang.ClassCastException: servlet.UserS ...

  6. java.lang.ClassCastException: cn.itcase.serviceImpl.servicestudentImpl cannot be cast to javax.servlet.Servlet

    java.lang.ClassCastException: cn.itcase.serviceImpl.servicestudentImpl cannot be cast to javax.servl ...

  7. 异常:Servlet class X is not a javax.servlet.Servlet

    使用Maven命令 mvn archetype:create 创建了一个简单的web项目.导入Eclipse运行时,报这样的异常信息: Servlet class X is not a javax.s ...

  8. Servlet Servlet是Java平台上的CGI技术

    Servlet Servlet是Java平台上的CGI技术.Servlet在服务器端运行,动态地生成Web页面.与传统的CGI和许多其它类似CGI的技术相比,Java Servlet具有更高的效率并更 ...

  9. "xxx cannot be cast to jakarta.servlet.Servlet "报错解决方式

    在做jsp的上机时候同学出现了一个500错误:com.kailong.servlet.ComputeBill cannot be cast to jaka.servlet.Servlet 然后因为我用 ...

随机推荐

  1. 检查目录下 文件的权限-linux shell脚本

    #!/bin/bash #History: #2019/07/23    Fsq #This Program will check Permissions on dir PATH=/bin:/sbin ...

  2. 单核cpu实现多任务原理

  3. vue 点击切换图标

    <div @click="showImg" class="showSearch"> <img class="header_img&q ...

  4. Java中如何获取到线程dump文件

    死循环.死锁.阻塞.页面打开慢等问题,打线程dump是最好的解决问题的途径.所谓线程dump也就是线程堆栈,获取到线程堆栈有两步: (1)获取到线程的pid,可以通过使用jps命令,在Linux环境下 ...

  5. Kirinriki

    Kirinriki 定义两个长度相等的字符串\(\{a_i\},\{b_i\}\)的距离为\(\sum_{i=1}^n|a_i-b_{n-i+1}|\)(其中n为字符串的长度),给出一个字符串\(\{ ...

  6. throws/throw Exception 异常应用

    throws通常用于方法的声明,当方法中发生异常的时候,却不想在方法中对异常进行处理的时候,就可以在声明方法时, 使用throws声明抛出的异常,然后再调用该方法的其他方法中对异常进行处理(如使用tr ...

  7. Shell基础(四):字符串截取及切割、字符串初值的处理、基使用Shell数组、expect预期交互、使用正则表达式

    一.字符串截取及切割 目标: 使用Shell完成各种Linux运维任务时,一旦涉及到判断.条件测试等相关操作时,往往需要对相关的命令输出进行过滤,提取出符合要求的字符串. 本案例要求熟悉字符串的常见处 ...

  8. webstorm使用说明

    1.移动光标到的代码块的结尾处(开始处 [ )      ctrl+] 2.移动光标到的代码块的结尾处并选择   ctrl+shift+] 3.ctrl + b: 跳到变量申明处 4.多光标输入:  ...

  9. visual_c++外挂教程(详细)

    课程分四个大章节 初级篇,中级篇,进阶篇,高级篇 初级篇内容:编写一个完整的,简单的外挂 C++的数据类型:Byte,Word,DWORD,int,float API函数的调mouse_event,G ...

  10. NAT和路由器 基本概念

    NAT(Network Address Translation, 网络地址转换)是1994年提出的.当在专用网内部的一些主机本来已经分配到了本地IP地址(即 仅在本专用网内使用的专用地址),但现在又想 ...