http协议:
超文本传输协议,是一种无状态协议,就是说客户端发送一次请求,服务器端接收请求,经过处理返回给客户端信息,然后客户端和服务器端的链接就断开了,为了维护他们之间的链接,让服务器知道这是前一个用户发送的请求,必须在一个地方保存客户端的信息,有2中解决方案,一是在客户端保存,二是在服务器端保存。
1.在客户端保存:Cookie
2.在服务器端保存:Session(session需要依靠cookie来实现)
3.在用户禁用cookie的限制下,只能使用URL重写的方式在每次请求之后附上一个键值对来保存客户端的信息。
4.隐藏表单。<input type="hidden" name="method" value="login">
servlet:
1.service加let的缩写,顾名思义,服务器上运行的java小程序。
2.servlet是用java语言编写,属于javaEE,而非j2se,他是在j2se基础上进行了扩展,并遵循了一定的规范。
3.sevlet用于接收客户端发送的显示数据和隐式数据,并进行处理,然后将结果返回给客户端。
4.servlet和web服务器的不同之处在于web服务器只能返回静态页面,而servlet能够返回动态页面。
为什么servlet能够生成动态页面呢?因为servlet能够通过查询数据库实时生成数据。
sevlet处理请求响应全过程
1>>启动web服务器,接收请求。
2>>客户端发送请求
3>>浏览器对请求进行封装,并发送到web服务器端
4>>web服务器对请求信息进行解封装,如果请求的是静态页面,则交由web服务器处理,如果请求的是动态页面,则交由web容器处理。
5>>web容器根据web.xml文件去找相应的servlet类,如果没找到servlet实例,直接返回一个而错误页面给客户端。如果找到servlet,则产生一个新的线程,容器产生request和response对象,request对象封装客户端的请求信息,response对象封装返回给客户端的响应信息,将这2个对象作为参数传递给servlet的service()方法.(在web服务器没有将请求信息交给容器之前,是没有resquest和response对象的,并且这2个对象只能在容器中存在)
6>>servlet对请求信息进行处理,并将响应信息封装到response对象中返回给web服务器,此时再由服务器将响应信息进行封装,发送给客户端,客户端浏览器得到信息之后对其进行解封装,然后显示在浏览器上。
7>>当servlet处理完请求之后,就会刷新response对象,将控制权交给web服务器。
servlet生命周期
1>>服务器启动并装载servlet
2>>容器实例化servlet
3>>容器触发init()方法初始化servlet
4>>客户端发送请求,servlet调用service()方法对请求进行处理
5>>容器丢弃servlet,调用servlet的destory()方法
分享到:
相关推荐
Servlet技术是Java Web开发的核心,它为Web应用程序提供了服务器端的编程接口。Jakarta Servlet API 4.0是Servlet规范的最新版本,它包含了对HTTP协议处理、生命周期管理、会话跟踪、安全性和性能优化等方面的全面...
Servlet-api-3.0.jar是Java Servlet API的第三版实现,它是开发Web应用程序的重要组成部分,特别是在基于Java的服务器端编程中。这个库包含了用于创建和管理HTTP服务端点的接口和类,允许开发者构建动态、交互式的...
【标题】"Shopping-web-Jsp-Servlet.rar" 是一个基于Java Web技术的购物网站项目,主要涉及了JSP(JavaServer Pages)和Servlet的技术应用。这个项目可能是一个学生或者开发者为了学习或实践Web开发技能而创建的。在...
【javax-servlet-api-3.0.1.jar】是一个重要的Java库,主要用于开发Servlet应用程序。Servlet是Java平台上的一个标准接口,它允许程序员创建能够处理HTTP请求的服务器端程序。这个JAR文件包含了Servlet API 3.0.1...
在IT行业中,Web开发是一项核心技能,而JSP(JavaServer Pages)和Servlet是Java Web开发中的重要组件,尤其在构建动态网站时。本项目"用户注册与登录Web程序"运用了这两项技术,旨在创建一个基本的用户管理系统,...
HTTP协议是互联网应用层的一个重要协议,负责规定客户端与服务器之间传输的格式和规则,而Servlet则是一个Java编程模型,专门用来扩展服务器功能和处理客户端请求。下面我将详细介绍这两个知识点。 HTTP协议是...
标题提及的"jsp-api.jar(2.3)与servlet-api.jar (3.1)"指的是两个关键的Java Web开发库,它们是JavaServer Pages(JSP)和Servlet技术的API实现。JSP 2.3是用于创建动态网页的Java平台标准,而Servlet 3.1则是...
### 基于Servlet的Web图表编程 #### 1. Servlet概述及特点 Servlet作为Java Web开发中的核心组件之一,其重要性不言而喻。Servlet是一种基于Java技术的服务器端程序,它能够处理客户端通过HTTP协议发送的请求并...
在这个"**servlet-2_5-api.zip**"压缩包中包含的"**servlet-2_5-api.jar**"文件,就是用来支持开发人员按照Servlet 2.5规范进行编程的库。 Servlet是Java平台上用于扩展Web服务器功能的一种技术。在Servlet 2.5版本...
在上面的示例中,`<servlet>`标签用于定义Servlet的基本信息,包括名字(`<servlet-name>`)、显示名称(`<display-name>`)、描述(`<description>`)以及类名(`<servlet-class>`)。`<servlet-mapping>`标签则...
<servlet-name>MyServlet</servlet-name> <servlet-class>com.example.MyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/myservice</url-...
解决这个问题需要理解字符编码(如UTF-8、GBK等)和HTTP头中的Content-Type字段,以及在Servlet和JSP中正确设置请求和响应的编码。 总结,Java Web应用的开发涉及众多方面,包括服务器配置、安全性、用户体验优化、...
* 统一接口:Servlet API 提供了统一的编程接口,方便开发者快速开发和维护 Servlet 应用程序。 Servlet 的层次结构: * java.lang.Object:是 Servlet 的祖先类。 * javax.servlet.GenericServlet:是 Servlet 的...
servlet是Java EE(现在称为Jakarta EE)规范的一部分,用于扩展基于HTTP协议的Web服务器,使其具备处理客户端请求的能力。servlet负责接收请求并返回响应,它们在服务器端运行,可以被看作是Java语言编写的服务器端...
标题中的"jsp-api.jar"和"servlet-api.jar"是Java Web开发中两个非常重要的库文件,它们分别对应Java Server Pages(JSP)...这三个元素共同构成了Java Web开发中的重要组成部分,对于理解和实践Java Web编程至关重要。
- 在web.xml文件中,通过`<servlet>`和`<servlet-mapping>`元素来配置Servlet,指定Servlet类名和URL映射。 - 也可以使用Java Annotation(@WebServlet)进行动态注册,简化配置。 3. **请求与响应处理** - ...
<servlet-name>MyServlet</servlet-name> <servlet-class>com.example.MyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/myservice</url-...
JSP(JavaServer Pages)和Servlet是Java编程语言在Web开发中的两个核心技术,它们主要用于创建动态网页和处理HTTP请求。 JSP是Java的一种视图技术,它允许开发人员在HTML或XML文档中嵌入Java代码,从而实现页面...
《Java Servlet 3.1 规范》是中国Java开发者学习Servlet技术的重要参考资料,它详细阐述了Servlet 3.1版本中的...通过阅读和实践《servlet-3_1-final(中文版).doc》,开发者可以更好地掌握Java Web开发的核心技术。