Serlvert
来源:互联网 发布:义乌淘宝培训班要求 编辑:程序博客网 时间:2024/06/02 06:40
参考:http://www.jianshu.com/p/fc7f31b664d5
Servlet简介
Servlet(Server Applet),全称Java Servlet,是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。
Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。
最早支持Servlet标准的是JavaSoft的Java Web Server。此后,一些其它的基于Java的Web服务器开始支持标准的Servlet。
Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。
最早支持Servlet标准的是JavaSoft的Java Web Server。此后,一些其它的基于Java的Web服务器开始支持标准的Servlet。
Java Web服务器处理用户请求的基本过程:用户在客户端点击一个链接,浏览器会向Web应用服务器发送一个URL请求,该URL会指向一个servlet;Web容器看出这个请求指向某个servlet A,就会创建两个对象(HttpServletRequest和HttpServletResponse),并分配或创建一个线程,调用servlet A对应的service方法(上述请求和响应对象作为参数);service根据HTTP请求区分出客户端发来的是GET还是POST请求,并调用对应的doGet()或doPost()方法;在doGet()或doPost()方法中进行业务逻辑的处理,处理完成后的结果通过响应对象返回写回给客户端。
Servlet的生命周期
在容器启动时,XXXServlet在JVM的管理下被实例化为一个对象,这时候它还不是servlet,需要在容器的管理下调用init()方法进行初始化,获得ServletConfig和ServletContext对象的引用后,才称为一个真正的Servlet。
- init()
- 何时调用?servlet实例创建后,并在servlet能为客户请求提供服务之前,容器需要通过init方法初始化servlet。
- 作用?初始化servlet实例,使之获得web容器的相关信息
- 是否会被覆盖?有可能
- service()
- 何时调用?当一个客户请求到来时,容器会创建(或从线程池分配一个线程),并调用servlet的service方法
- 作用?这个方法会确定HTTP方法(GET or POST),并调用对应的servlet方法——doGet或doPost;
- 是否会被覆盖?可以,但是不会
- doGet()或doPost()
- 何时调用?
- 作用?具体的业务逻辑
- 是否会被覆盖?至少要覆盖其中之一
关键点:每个请求都在一个单独的线程中运行!
阅读全文
0 0
- Serlvert
- 梯度消失/爆炸浅析
- Spring中,applicationContext.xml 配置文件在web.xml中的配置详解
- 使用Eclipse开发工具
- 特征工程之连续特征与离散特征处理方法介绍
- Android关于项目中遇到的按home键退出到桌面,再次打开重新启动程序的解决方法
- Serlvert
- kehou..
- 详解HttpURLConnection
- Android Studio:SVN->GIT(三)
- iOS应用架构谈(3) 网络层设计方案
- Ubuntu 14 上安装youcompleteme
- Utils帮助类(半角转为全角和去除特殊字符或将所有中文标号替换为英文标号)
- HTML5 中的新特性
- opencv之轮廓特征属性及应用