Servlet—基础
什么是Servlet?
1 . jsp经编译后就变成了Servlet.(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代
码,Web容器将JSP的代码编译成JVM能够识别的java类)
2. jsp更擅长表现于页面显示,servlet更擅长于逻辑控制.servlet控制器降低耦合性
3. Servlet中没有内置对象,Jsp中的内置对象都是必须通过HttpServletRequest对象,
HttpServletResponse对象以及HttpServlet对象得到.Jsp是Servlet的一种简化,使用Jsp只需要完
成程序员需要输出到客户端的内容,Jsp中的Java脚本如何镶嵌到一个类中,由Jsp容器完成。而
Servlet则是个完整的Java类,这个类的Service方法用于生成对客户端的响应。
JSP和Servlet的区别?
1.在JSP是在Servlet技术产生之后才产生的,为什么?
2.jsp在服务器经过翻译编译之后的java文件,其实是继承
org.apache.jasper.runtime.HttpJspBase类(编相应
的jspService方法,输出指定的html代码)
并实现了org.apache.jasper.runtime.JspSourceDependent
接口
3.HttpJspBase类其实也是继承HttpServlet类,所以说,JSP
本质上也和servlet一样继承自HttpServlet类。所以说
jsp本质上也是一个servlet,都运行在服务器端。
Servlet:是一个类,运行在服务器端,用来接受请求和响应请求
Servlet的使用
Servlet的应用步骤:
1:创建Servlet类,继承HttpServlet类,重写doPost()/doGet()方法
2:部署Servlet
a)编译Servlet到/WEB-INF/classes目录
b)编辑部署描述文件web.xml
3:通过浏览器访问servlet.

编辑部署描述文件web.xml
<servlet>
<servlet-name>MyServlet</servlet-name>//这里是servlet 的名字,自己定义 的
<servlet-class>Servlet </servlet-class>//这里是servlet的位置 。 如果在一个包下就写包名.类名,容器会从class的路径去实例化servlet。
</servlet>
<servlet-mapping>
<servlet-name>MyServlet </servlet-name>//跟上面的;servlet-name 必须一样
<url-pattern>/abc </url-pattern>//这是在地址 输入访问的时候 输入的,自己定义
</servlet-mapping>
<url-pattern>的三种配置方式:





Servlet的结构
Servlet接口 :定义了一些接收用户请求,处理用户请求的方法,Servlet自身的方法。
ServletConfig:每一个Servlet都对应一个ServletConfig 实例(实例作为init方法的参数传进去)里面是 关于Servlet的一些配置。
GenericServlet:实现了上面两个接口,但是并没有实现全部 的方法,所以还是一个抽象类。
HttpServlet :实现了GenericServlet的部分方法,所以HttpServlet也是抽象类,处理http协议的请求和响应







Servlet的请求
请求和响应的接口的继承关系





什么是请求的上下文路径?
要访问的项目的根目录的路径:localhost:6060/new2/





Servlet—基础的更多相关文章
- JSP数据交互(二)和Servlet基础
01.Application原理与应用 01.application对象的作用域范围是整个应用服务,而它在应用中所承担的责任就类似于一个全局变量.只要服务启动,则application对象就会存在. ...
- Servlet基础(三) Servlet的多线程同步问题
Servlet基础(三) Servlet的多线程同步问题 Servlet/JSP技术和ASP.PHP等相比,由于其多线程运行而具有很高的执行效率. 由于Servlet/JSP默认是以多线程模式执行的, ...
- Servlet基础(二) Servlet的生命周期
Servlet基础(二) Servlet的生命周期 Servlet的生命周期可以分为三个阶段: 1.初始化阶段 2.响应客户请求阶段 3.终止阶段 Servlet的初始化阶段 在下列时刻Servlet ...
- Servlet基础(一) Servlet简介 关键API介绍及结合源码讲解
Servlet基础(一) Servlet基础和关键的API介绍 Servlet简介 Java Servlet是和平台无关的服务器端组件,它运行在Servlet容器中. Servlet容器负责Servl ...
- JSP/Servlet基础语法
相关学习资料 http://my.oschina.net/chape/blog/170247 http://docs.oracle.com/cd/E13222_01/wls/docs81/webapp ...
- Servlet基础简单总结(上)
Servlet基础一些简单总结(上): 1.Java Servlet是运行在Web服务器上的Java程序2.Java平台给Servlet开发者提供了强大的API/面向对象编程平台无关/强类型/垃圾回收 ...
- servlet总结:Servlet基础
Servlet基础 1.手工编写第一个Servlet ⑴继承HttpServlet ⑵重写doGet()或者doPost()方法 ⑶在web.xml中注册Servlet 2.使用eclipse编写第一 ...
- servlet基础(组成与生命周期)
servlet基础作用:servlet是运行在Web服务器或应用服务器上的程序:担当web浏览器或其他HTTP客户程序发出的请求与HTTP服务器上的数据库或应用程序之间的中间层.1.读取客户程序发送的 ...
- Unit01: Servlet基础 、 HTTP协议
Unit01: Servlet基础 . HTTP协议 在页面上输出当前时间 package web; import java.io.IOException; import java.io.PrintW ...
- Servlet基础教程:tutorialspoint-servlet
来自turorialspoint的Servlet基础教程(英文),官网:https://www.tutorialspoint.com/servlets/index.htm 这个教程在国内已经被翻译成中 ...
随机推荐
- ZOJ1363 Chocolate
Chocolate Time Limit: 2 Seconds Memory Limit: 65536 KB Special Judge In 2100, ACM chocolat ...
- OpenCV获取IP摄像头视频
从开源中国博客搬来,合并博客 实验室做一个智能小车的小项目,期间涉及到在PC端处理小车摄像头的视频.这里先用安卓手机代替一下进行试验.大致流程就是手机摄像头获取视频,开启一个IP摄像头服务软件,在局域 ...
- Promise在await报错后,如何继续往下跑...
一.resolve 当a>0时,正常情况依次输出A.B.C console.log("A"); let result = await this.test(); console ...
- Centos 7.x临时的网络与路由配置
今天在虚拟机上安装了Centos 7.1操作系统,使用的最小化安装,安装完成后准备使用ifconfig命令时,发现命令不存在,如下: 心想肯定是新版的Centos 系统默认情况下没有使用ifconfi ...
- iOS开发中id、NSObject *、id、instancetype四者有什么区别?
在使用Objective-C语言进行iOS应用开发的时候,常常会涉及到id.NSObject *.id.instancetype这四个概念的使用,但这四者也是iOS初学者最易混淆的内容,下面小编看 ...
- vue--提取公共方法
在做一个项目的时候,一些组件内公用的方法可以单独提取出来做复用: 参考:https://www.jb51.net/article/115662.htm 简单示例: 代码: const config = ...
- Redis 如何保持和MySQL数据一致
1. MySQL持久化数据,Redis只读数据 redis在启动之后,从数据库加载数据. 读请求: 不要求强一致性的读请求,走redis,要求强一致性的直接从mysql读取 写请求: 数据首先都写到数 ...
- @log的decorator完美实现(原创)
# -*- coding: utf-8 -*- from functools import wraps from inspect import isfunction def beforecalled( ...
- python面向对象高级:__slots__
__slots__ 一个在有着数以千计的对象的类的时候节省内存的方法. 在Python中,每个类都有实例属性.默认情况下Python用一个字典来保存一个对象的实例属性.这非常有用,因为它允许我们在运行 ...
- 插入排序之python
插入排序( Insert sort) 通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入: 由于不需要全部都比较完,所以排序速度优于冒泡和选择排序. #插入排序就像是斗地 ...