servlet

  上文已经了解了web服务器和http协议是怎么回事儿,并且也了解了浏览器与服务器之间的联系,现在要介绍一下服务器是如何处理来自客户端的请求的,这就是servlet。

servlet:Java Servlet 是运行在Web服务器或应用服务器上的程序
作用:处理请求,tomcat服务器会把接收到的请求交给servlet处理,所以在servlet中通常要做的事情是
1.接受请求数据
2.处理
3.完成响应
实现servlet的方式有三种:
1.实现javax.servlet.Servlet接口
2.继承javax.servlet.GenericServlet类
3.继承javax.servlet.HttpServlet类 以后常用也是这种方式,调用servlet接口后,自动判断是get请求还是post请求,直接重写doGet方法和doPost方法就好

执行原理:

当服务器接受到客户端浏览器的请求后,会解析请求url路径,获取访问的servlet的资源路径
查找web.xml文件,是否有对应的<url-pattern>标签体内容。
如果有,则在找到对应的<servlet-class>全类名
tomcat会将字节码文件加载进内存,并且创建其对象调用其方法

init 生命周期方法 请求时初始化
service 生命周期方法 处理请求运行
destroy 生命周期方法 销毁时运行

继承javax.servlet.HttpServlet类 要重写doget和dopost方法,来判断提交方式。

<load-on-startup></load-on-startup>
标记tomcat是否应该在启动时加载此servlet(创建对象并调用其init方法)
1.它的值必须是一个整数,表示servlet被加载的顺序
2.如果该标签不存在或为负数时,则tomcat会在该servlet被请求时再加载
3.当值为0或大于0时,则tomcat在启动时就会加载并初始化这个servlet
4.如果是正数,值越小,加载servlet的优先级越高

ServletContext(上下文):一个项目只有一个ServletContex对象,通过它可以在servlet之间共享数据
ServletContext对象在tomcat启动时创建,tomcat关闭时销毁

javaweb有四大域:
ServletContext,session,request,pageContext
servlet三大域:
ServletContext,session,request

域:其实就是一个空间,一个存储数据的空间,既然是存储数据的空间就意味着可以设置添加,获取,删除,很方便理解

下文就将介绍service方法中的request(请求)和response(响应)这两个对象的功能以及 以及request作为域的用法

javaweb入门----servlet简介的更多相关文章

  1. JavaWeb之Servlet入门(二)

    1. 准备 在JavaWeb之Servlet入门(一)中,我们完成了第一个Servlet程序,完成了从URL到后台控制器的中转过程,接下来我们延续JavaWeb之Servlet入门(一)学习下如何传参 ...

  2. JavaWeb入门——在Linux环境下安装Tomcat服务器

    JavaWeb入门——在Linux环境下安装Tomcat服务器 摘要:本文主要学习了如何在Linux环境下安装Tomcat服务器. 准备工作 检查Java环境变量 检查系统是否配置了Java的环境变量 ...

  3. Javaweb:Servlet

    servlet简介 Servlet(Server Applet)是 Java Servlet 的简称,是使用 Java 语言编写的运行在服务器端的程序.具有独立于平台和协议的特性,主要功能在于交互式地 ...

  4. JavaEE:Servlet简介及ServletConfig、ServletContext

    Servlet简介 1.Servlet是sun公司提供的一门用于开发动态web资源的技术*静态web资源:固定数据文件*动态web资源:通过程序动态生成数据文件2.Servlet技术基于Request ...

  5. Servlet简介及使用

    javaweb学习总结(五)——Servlet开发(一) 一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口 ...

  6. JavaWeb(一)-Servlet知识

    一.Servlet简介 Servlet是sun公司提供一门用于开发动态web资源的技术. sun公司在其API中提供了一个servlet接口,用户若想开发一个动态web资源(即开发一个java程序向浏 ...

  7. 【Servlet】(1)Servlet简介、Servlet底层原理、Servlet实现方式、Servlet生命周期

    一.Servlet简介 1.Servlet定义: Servlet(Server Applet)是Java Servlet的简称,是为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交 ...

  8. javaweb核心技术servlet

      一.Servlet简介 1.什么是Servlet Servlet 运行在服务端的Java小程序,是sun公司提供一套规范(接口),用来处理客户端请求.响应给浏览器的动态资源.但servlet的实质 ...

  9. JavaWeb入门——在Windows环境下安装Tomcat服务器

    JavaWeb入门——在Windows环境下安装Tomcat服务器 摘要:本文主要学习如何在Windows环境中下载并安装Tomcat服务器. 下载 获取安装包 推荐去官网上下载Tomcat: htt ...

随机推荐

  1. Laravel ---【转】PhpStorm下Laravel代码智能提示

    [转]http://blog.csdn.net/pangchengyong0724/article/details/54706775 第一步:在项目的composer.json中添加如下一行 &quo ...

  2. maven中引入oracle驱动报错Missing artifact com.oracle:ojdbc14:jar

    maven中央库中查找ojdbc14 ,复制依赖,maven项目中引入ojdbc14 来回折腾,加仓库镜像,各种修改setting.xml 文件 就是不行,后来看到一位网友博客,MMP Oracle ...

  3. vuex分模块后,如何获取state的值

    问题:vuex分模块后,一个模块如何拿到其他模块的state值,调其他模块的方法? 思路:1.通过命名空间取值--this.$store.state.car.list // OK 2.通过定义该属性的 ...

  4. appcan 多按钮提示框

    使用  appcan.window.alert EG: var btnList=new Array(); btnList[0]="确认"; btnList[1]="取消& ...

  5. 异常:Parameter 'username' not found. Available parameters are [arg1, arg0, param1, param2]

    内容中包含 base64string 图片造成字符过多,拒绝显示

  6. 【运维实战】利用tar -g 实现简单全量备份和增量备份(带演示)

    备份产生 全量备份指完全备份,增量备份指针对上次至今的修改进行备份.linux提供tar -g可实现备份功能. 第一次运行 tar -g 备份存放目录/snapshot -czvf  备份存放目录/备 ...

  7. python基本数据类型之数字类型和其相关运算

    数字(number) Python3 支持 int.float.bool.complex(复数). 在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long. ...

  8. kettle —— 从 oracle 到 oracle的坑

    公司有个项目,是使用kettle从oracle上统计,再将结果跟oracle中目标表进行对比更新.接手后,走了一些弯路,中间各种尝试都不尽如人意,也学了kettle的一些组件的用法.正好趁着机会记录 ...

  9. CSDN,CNBLOGS博客文章一键转载插件(转载测试)

    插件地址: https://greasyfork.org/zh-CN/scripts/381053-csdn%E5%8D%9A%E5%AE%A2%E6%96%87%E7%AB%A0%E8%BD%AC% ...

  10. 多线程总结-同步之ReentrantLock

    目录 1 ReentrantLock与synchronized对比 2.示例用法 2.1 基本用法 2.2 尝试锁 2.3 可打断 2.4 公平锁 1 ReentrantLock与synchroniz ...