什么是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—基础的更多相关文章

  1. JSP数据交互(二)和Servlet基础

    01.Application原理与应用 01.application对象的作用域范围是整个应用服务,而它在应用中所承担的责任就类似于一个全局变量.只要服务启动,则application对象就会存在. ...

  2. Servlet基础(三) Servlet的多线程同步问题

    Servlet基础(三) Servlet的多线程同步问题 Servlet/JSP技术和ASP.PHP等相比,由于其多线程运行而具有很高的执行效率. 由于Servlet/JSP默认是以多线程模式执行的, ...

  3. Servlet基础(二) Servlet的生命周期

    Servlet基础(二) Servlet的生命周期 Servlet的生命周期可以分为三个阶段: 1.初始化阶段 2.响应客户请求阶段 3.终止阶段 Servlet的初始化阶段 在下列时刻Servlet ...

  4. Servlet基础(一) Servlet简介 关键API介绍及结合源码讲解

    Servlet基础(一) Servlet基础和关键的API介绍 Servlet简介 Java Servlet是和平台无关的服务器端组件,它运行在Servlet容器中. Servlet容器负责Servl ...

  5. JSP/Servlet基础语法

    相关学习资料 http://my.oschina.net/chape/blog/170247 http://docs.oracle.com/cd/E13222_01/wls/docs81/webapp ...

  6. Servlet基础简单总结(上)

    Servlet基础一些简单总结(上): 1.Java Servlet是运行在Web服务器上的Java程序2.Java平台给Servlet开发者提供了强大的API/面向对象编程平台无关/强类型/垃圾回收 ...

  7. servlet总结:Servlet基础

    Servlet基础 1.手工编写第一个Servlet ⑴继承HttpServlet ⑵重写doGet()或者doPost()方法 ⑶在web.xml中注册Servlet 2.使用eclipse编写第一 ...

  8. servlet基础(组成与生命周期)

    servlet基础作用:servlet是运行在Web服务器或应用服务器上的程序:担当web浏览器或其他HTTP客户程序发出的请求与HTTP服务器上的数据库或应用程序之间的中间层.1.读取客户程序发送的 ...

  9. Unit01: Servlet基础 、 HTTP协议

    Unit01: Servlet基础 . HTTP协议 在页面上输出当前时间 package web; import java.io.IOException; import java.io.PrintW ...

  10. Servlet基础教程:tutorialspoint-servlet

    来自turorialspoint的Servlet基础教程(英文),官网:https://www.tutorialspoint.com/servlets/index.htm 这个教程在国内已经被翻译成中 ...

随机推荐

  1. Egret IDE中搜索,过滤文件,只搜索.ts

    刚开始忘了这个搜索条件在哪里打开了,后来找着了,记录一下 = =!

  2. Android 简单计算器实现源码

    1.string.xml代码 <?xml version="1.0" encoding="utf-8"?> <resources> &l ...

  3. 【CF618G】Combining Slimes 概率+矩阵乘法

    [CF618G]Combining Slimes 题意:一个长度为$1\times n$的网格,每次从最右侧往里推入一个数字1或2(数字会一直跑到最左边的空格子里),加入1的概率为p,2的概率为1-p ...

  4. nginx虚拟目录配置

    参考文章:https://blog.csdn.net/whatday/article/details/50649461 1. location ~ ^/awstats/ { root /home/aw ...

  5. thinkphp自动验证详解

    自动验证时THINKPHP提供的一种比较好的验证方式,可以在使用create创建数据对象的时候自动进行数据验证. 数据进行自动验证的方式有两种: 1.静态方式:在模型类里面通过$_validate属性 ...

  6. R子集subset

    > x<-c(6,1,2,3,NA,12) > x[x>5]    #x[5]是未知的,因此其值是否大于5也是未知的 [1]  6 NA 12 > subset(x,x& ...

  7. RGB颜色值与十六进制颜色码对照表

    颜色码对照表 颜色 英文代码 形象描述 十六进制 RGB LightPink 浅粉红 #FFB6C1 255,182,193 Pink 粉红 #FFC0CB 255,192,203 Crimson 猩 ...

  8. 1.tTensorboard

    Windows下坑太多...... 在启动TensorBoard的过程,还是遇到了一些问题.接下来简单的总结一下我遇到的坑.        1.我没找不到log文件?!              答: ...

  9. linux:任务计划crontab

    crontab 简介 crontab 命令常见于 Unix 和类 Unix 的操作系统之中(Linux 就属于类 Unix 操作系统),用于设置周期性被执行的指令. crontab 命令从输入设备读取 ...

  10. 钱币兑换问题--hdu1284(完全背包)

    Problem Description 在一个国家仅有1分,2分,3分硬币,将钱N兑换成硬币有很多种兑法.请你编程序计算出共有多少种兑法.   Input 每行只有一个正整数N,N小于32768.   ...