`
段箭*残箫
  • 浏览: 53725 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类

web编程--http协议和servlet之我见

阅读更多

 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()方法

分享到:
评论

相关推荐

    jakarta-servletapi-4-src.zip servlet源码

    Servlet技术是Java Web开发的核心,它为Web应用程序提供了服务器端的编程接口。Jakarta Servlet API 4.0是Servlet规范的最新版本,它包含了对HTTP协议处理、生命周期管理、会话跟踪、安全性和性能优化等方面的全面...

    servlet-api-3.0.jar包

    Servlet-api-3.0.jar是Java Servlet API的第三版实现,它是开发Web应用程序的重要组成部分,特别是在基于Java的服务器端编程中。这个库包含了用于创建和管理HTTP服务端点的接口和类,允许开发者构建动态、交互式的...

    Shopping-web-Jsp-Servlet.rar_java web servlet_shopping

    【标题】"Shopping-web-Jsp-Servlet.rar" 是一个基于Java Web技术的购物网站项目,主要涉及了JSP(JavaServer Pages)和Servlet的技术应用。这个项目可能是一个学生或者开发者为了学习或实践Web开发技能而创建的。在...

    javax-servlet-api-3.0.1.jar

    【javax-servlet-api-3.0.1.jar】是一个重要的Java库,主要用于开发Servlet应用程序。Servlet是Java平台上的一个标准接口,它允许程序员创建能够处理HTTP请求的服务器端程序。这个JAR文件包含了Servlet API 3.0.1...

    user-register-and-login-web-program.rar_jsp servlet网站

    在IT行业中,Web开发是一项核心技能,而JSP(JavaServer Pages)和Servlet是Java Web开发中的重要组件,尤其在构建动态网站时。本项目"用户注册与登录Web程序"运用了这两项技术,旨在创建一个基本的用户管理系统,...

    Day09_http协议 & servlet

    HTTP协议是互联网应用层的一个重要协议,负责规定客户端与服务器之间传输的格式和规则,而Servlet则是一个Java编程模型,专门用来扩展服务器功能和处理客户端请求。下面我将详细介绍这两个知识点。 HTTP协议是...

    jsp-api.jar(2.3)与servlet-api.jar (3.1)

    标题提及的"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图表编程

    ### 基于Servlet的Web图表编程 #### 1. Servlet概述及特点 Servlet作为Java Web开发中的核心组件之一,其重要性不言而喻。Servlet是一种基于Java技术的服务器端程序,它能够处理客户端通过HTTP协议发送的请求并...

    servlet-2_5-api.zip_servlet-2_5-api.jar

    在这个"**servlet-2_5-api.zip**"压缩包中包含的"**servlet-2_5-api.jar**"文件,就是用来支持开发人员按照Servlet 2.5规范进行编程的库。 Servlet是Java平台上用于扩展Web服务器功能的一种技术。在Servlet 2.5版本...

    Java Web应用开发 47 课堂案例-配置和调用Servlet.docx

    在上面的示例中,`&lt;servlet&gt;`标签用于定义Servlet的基本信息,包括名字(`&lt;servlet-name&gt;`)、显示名称(`&lt;display-name&gt;`)、描述(`&lt;description&gt;`)以及类名(`&lt;servlet-class&gt;`)。`&lt;servlet-mapping&gt;`标签则...

    深入java servlet 网络编程

    &lt;servlet-name&gt;MyServlet&lt;/servlet-name&gt; &lt;servlet-class&gt;com.example.MyServlet&lt;/servlet-class&gt; &lt;/servlet&gt; &lt;servlet-mapping&gt; &lt;servlet-name&gt;MyServlet&lt;/servlet-name&gt; &lt;url-pattern&gt;/myservice&lt;/url-...

    Java网络编程-Java Web应用

    解决这个问题需要理解字符编码(如UTF-8、GBK等)和HTTP头中的Content-Type字段,以及在Servlet和JSP中正确设置请求和响应的编码。 总结,Java Web应用的开发涉及众多方面,包括服务器配置、安全性、用户体验优化、...

    java web Servlet

    * 统一接口:Servlet API 提供了统一的编程接口,方便开发者快速开发和维护 Servlet 应用程序。 Servlet 的层次结构: * java.lang.Object:是 Servlet 的祖先类。 * javax.servlet.GenericServlet:是 Servlet 的...

    servlet各个版本的区别

    servlet是Java EE(现在称为Jakarta EE)规范的一部分,用于扩展基于HTTP协议的Web服务器,使其具备处理客户端请求的能力。servlet负责接收请求并返回响应,它们在服务器端运行,可以被看作是Java语言编写的服务器端...

    jsp-api.jar servlet-api.jar

    标题中的"jsp-api.jar"和"servlet-api.jar"是Java Web开发中两个非常重要的库文件,它们分别对应Java Server Pages(JSP)...这三个元素共同构成了Java Web开发中的重要组成部分,对于理解和实践Java Web编程至关重要。

    Servlet与JSP核心编程(第2卷 第2版)

    - 在web.xml文件中,通过`&lt;servlet&gt;`和`&lt;servlet-mapping&gt;`元素来配置Servlet,指定Servlet类名和URL映射。 - 也可以使用Java Annotation(@WebServlet)进行动态注册,简化配置。 3. **请求与响应处理** - ...

    servlet网络编程

    &lt;servlet-name&gt;MyServlet&lt;/servlet-name&gt; &lt;servlet-class&gt;com.example.MyServlet&lt;/servlet-class&gt; &lt;/servlet&gt; &lt;servlet-mapping&gt; &lt;servlet-name&gt;MyServlet&lt;/servlet-name&gt; &lt;url-pattern&gt;/myservice&lt;/url-...

    精品--一个基于JSP+Servlet的网上书店系统,可以用做大作业和毕业设计.zip

    JSP(JavaServer Pages)和Servlet是Java编程语言在Web开发中的两个核心技术,它们主要用于创建动态网页和处理HTTP请求。 JSP是Java的一种视图技术,它允许开发人员在HTML或XML文档中嵌入Java代码,从而实现页面...

    servlet-3_1-final(中文版).doc

    《Java Servlet 3.1 规范》是中国Java开发者学习Servlet技术的重要参考资料,它详细阐述了Servlet 3.1版本中的...通过阅读和实践《servlet-3_1-final(中文版).doc》,开发者可以更好地掌握Java Web开发的核心技术。

Global site tag (gtag.js) - Google Analytics