`
x98zero
  • 浏览: 108833 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Servlet提供服务的方法2-了解servlet

    博客分类:
  • Java
阅读更多

HTTP Servlets 使用 HTTP request 对象( HttpServletRequest ),它包含了 request URL HTTP 头信息、查询字符串,等等。 HTTP request URL 包括几个部分:
    http://:?

    一般情况下:

requestURI = contextPath + servletPath + pathInfo

Context path :通过 getContextPath 方法获得。
Servlet Path
:通过 getServletPath 方法获得。
PathInfo
:通过 getPathInfo 方法获得。

关于路径的对应

Request Path            

Path Elements:   /catalog/help/feedback.jsp

ContextPath:     /catalog

ServletPath:      /help/feedback.jsp

PathInfo: null

提供 HTTP 响应
   
响应( response )包含了在服务器和客户端之间传递的数据。所有的响应( response )都实现了 ServletResponse 接口。这个接口定义了一些方法提供给开发人员使用,如表 14-3 所示。

14-3 ServletResponse 接口方法

l         类型描述 : 获得向客户端发送数据的输出流

对应方法 :

getWriter(),

getOutputStream()

l         类型描述 : 指示响应返回的内容类型(例如: text/html )已经注册的内容类型名称保存在 IANA Internet Assigned Numbers Authority

对应方法 :

setContentType(java.lang.String type)

l         类型描述 : 指出是否是缓冲输出。默认情况下写入输出的内容被立即发送到客户端。使用缓冲后写入输出的内容先不发送到客户端,这样 Servlet 有更多的时间设置相应的状态码和头信息,或者转移到其他的 Web 资源

对应方法 :

flushBuffer()

getBufferSize()

isCommitted()

reset()  

resetBuffer()

setBufferSize(int size)

setContentLength(int len)

l         类型描述 : 设置 localization 信息

对应方法 :

getCharacterEncoding()

getLocale()

setLocale(java.util.Locale loc)

HTTP response 类( HttpServletResponse )有一些代表 HTTP 头信息的域:

状态码用来指出响应( response )失败的原因。

Cookies 在客户端存储应用相关的信息,有时 cookies 用来维护和标识用户的 session

Servlet 的设置顺序

1.         首先设置响应( response )头信息,包括响应( response )的内容类别和缓冲区大小,

2.         然后在 doGet 方法中从响应( response )获得 PrintWriter

3.         最后向输出中写入 HTML 代码,

4.         调用 close() 方法提交这次对客户端的响应( response )。

示范代码如下:

public void doGet (HttpServletRequest request,HttpServletResponse response)    throws ServletException, IOException {

// 设置头信息

response.setContentType("text/html");

response.setBufferSize(8192);

PrintWriter out = response.getWriter();

// response 中输出
    out.println("<html>" + "<head><title>+messages.getString("TitleBookDescription")+</title></head>");

//    ...

out.println("</body></html>");

// 关闭输出流
    out.close();
}

分享到:
评论

相关推荐

    PHP/Java Bridge的JavaBridge.jar、php-servlet.jar和php-script.jar

    2. **php-servlet.jar**: php-servlet.jar是PHP/Java Bridge的另一个关键部分,它是一个Servlet,负责在Java应用服务器中处理来自PHP的请求。当PHP通过HTTP请求与Java服务器交互时,php-servlet接收这些请求,解析...

    servlet-2_2b-doc-API

    综上所述,"servlet-2_2b-doc-API"这个压缩包提供的文档将帮助我们理解Servlet API 2.2的核心概念、接口、类和生命周期,以及如何利用这些知识来编写和配置Servlet以及与JSP协同工作。对于想要深入研究早期Java Web...

    servlet源码 servlet-api-src javax.servlet.Servlet源码

    `servlet-api-src`提供了Servlet API的源代码,这对于开发者来说是非常有价值的。通过阅读源码,我们可以理解Servlet API的工作机制,了解请求和响应对象的内部实现,以及容器如何管理Servlet的生命周期。这对于优化...

    servlet-2_4-fr-spec-doc.rar_doc_servlet 2.4 spec_servlet api_ser

    &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-...

    servlet-api 各种版本

    Servlet-API是Java Servlet技术的核心部分,它定义了服务器端与客户端之间交互的一系列接口和类。这个压缩包包含了Servlet-API的多个版本,分别是2.2、2.3、2.4、2.5以及3.0。每个版本的发布都带来了新的功能和改进...

    servlet-api-2.5-6.1.4.jar.zip(125 k).ZIP

    总结来说,`servlet-api-2.5-6.1.4.jar.zip`压缩包提供了Servlet API的核心接口和类,让开发者能够构建基于Java的Web应用程序。Servlet API 2.5版本引入了许多增强功能,如注解配置、异步处理和更强的安全性,极大地...

    javax.servlet-api-4.0.1.jar

    `javax.servlet-api-4.0.1.jar`包含了这些接口和类,使得开发者能够在自己的应用中实现HTTP服务、会话管理、过滤器、监听器等功能。 在JSP中,自定义标签提供了一种扩展HTML标签的能力,使得开发者可以创建具有特定...

    servlet-3-1-specification.pdf

    容器还负责将请求映射到对应的Servlet,并提供服务方法调用。 3. Servlet与其他技术的对比 Servlet可以和其他技术(如JSP, Struts等)相结合,共同构建动态Web应用程序。文件中提到了Servlet与这些技术的对比,帮助...

    jersey-container-servlet-2.0-m04.zip

    【标题】"jersey-container-servlet-2.0-m04.zip" 提供的是 Jersey 2.0 版本的Servlet容器模块,这是一个用于构建RESTful Web服务的Java框架。Jersey是JAX-RS(Java API for RESTful Web Services)规范的参考实现,...

    servlet-2_3-fcs-spec英文版.pdf

    2. **Filter**:Filter 是 Servlet 2.3 规范引入的一个重要特性,用于对请求和响应进行预处理和后处理。Filter 可以用于实现诸如认证、授权、编码转换等任务,极大地增强了应用的安全性和灵活性。 3. **Session ...

    servlet和jsp学习指南-高清-2013年4月

    - 服务:这是Servlet的主要工作阶段,在此期间,Servlet通过service()方法响应客户端请求。实际上,根据请求类型(GET、POST、PUT等),service()方法会调用相应的doGet()、doPost()等方法来处理。 - 销毁:当...

    grizzly-http-servlet-extras-2.3.8-beta1.zip

    本文将深入探讨两个关键的开源项目,分别是“grizzly-http-servlet-extras-2.3.8-beta1”和“portlettester”,它们分别在Servlet和Portlet测试领域提供了强大的支持。 首先,让我们关注“grizzly-...

    servlet之Filter使用范例--登陆验证

    Servlet是Java提供的一个用于扩展服务器功能的接口,而Filter则是一种动态web资源过滤机制,它允许我们在数据处理流程中进行预处理和后处理,比如登录验证、日志记录、GZIP压缩等。本篇文章将深入探讨如何使用Filter...

    midlet_servlet.rar_midlet-servlet

    标题中的"midlet_servlet.rar_midlet-servlet"暗示了这是一个关于Java ME(Midlet)与Servlet交互的项目。在移动设备(如早期的智能手机)上,Java ME(Micro Edition)提供了一个名为Midlet的框架,用于开发移动...

    servlet-api.jar和jsp-api.jar文件

    Servlet-api.jar是Servlet规范的实现,它提供了Servlet接口和Servlet容器(如Tomcat)之间交互的类和接口。主要包括以下关键组件: 1. **Servlet接口**:Servlet是Java Web应用的核心,它是一个实现了 javax....

    servlet-api基本类和接口介绍

    ### servlet-api基本类和接口介绍 #### 一、javax.servlet包内的基本类和接口概览 在Java Web开发中,`javax.servlet`包是至关重要的组成部分之一,它为Servlet提供了核心API,使得开发者能够构建动态的Web应用。...

    Servlet3-sources-code

    这个压缩包中的`servlet-3-sources-code`提供了Servlet3的源码,你可以通过阅读这些代码来深入理解Servlet的工作原理,了解其内部是如何处理请求和响应的,以及如何实现上述特性。这对于学习和优化Web应用性能,以及...

    servlet-api-src.jar

    了解Servlet API对于Java Web开发者至关重要,因为它为构建动态网站提供了基础框架。通过学习和使用Servlet API,开发者可以创建处理各种HTTP请求的服务器端应用,包括登录验证、数据处理、文件上传下载等。同时,...

    【免费】servlet和jsp学习指南-高清版

    Servlet生命周期包括加载、初始化、服务和销毁四个阶段,开发者可以通过重写相应的方法来定制这些过程。 JSP(JavaServer Pages)则是一种基于Java的动态网页技术,它将HTML代码与Java代码分离,使得页面设计更加...

    servlet 源码

    Servlet是Java平台上的一个核心技术,用于开发Web应用程序。它是一个Java类,符合Servlet API规范,能够接收并...在实际项目中,了解Servlet的工作原理有助于更好地解决性能问题、安全性问题以及设计更高效的应用架构。

Global site tag (gtag.js) - Google Analytics