zoukankan      html  css  js  c++  java
  • 第三章 使用Servlet处理HTTP响应

    回顾上一章的知识:
    Java Servlet是运行在Web服务器或应用服务器上的Java程序
    Servlet规范对Servlet功能进行了严格定义
    Servlet API与容器进行通讯
    Servlet的编码和部署
    Servlet需要在容器中进行注册和映射
    容器管理Servlet的生命周期
    SevletConfig对象为Servlet提供初始化参数
    ServletContext对象属于整个Web应用程序
     
    本章学习知识:
    回顾HTTP请求的处理过程(回顾第一章)
    设置HTTP状态码
    设置HTTP响应头
    设置HTTP消息体
    请求重定向和自动刷新页面
     

    设置HTTP状态码

    设置响应状态行:
    HTTP状态码:

    HTTP状态码:

    100-199:表示信息性代码,标示客户端应该采取的其他动作,请求正在进行。

    200-299:表示客户请求成功。

    300-399:表示用于已经移走的资源文件,指示新的地址。

    400-499:表示由客户端引发的错误。

    500-599:表示由服务器端引发的错误

    servlet设置状态码一般使用HttpServletResponse的setStatus()方法;

    设置HTTP响应头

    HttpServletResponse对象用于操纵响应的HTTP头
    目的用于告诉客户端
    –发送回来的内容的类型
    –有多少内容正被发送
    常用的方法:

    setContentType(String mimetype);

    addCookie(Cookie c);

    发送内容的服务器的类型

    设置HTTP消息体

    HttpServletResponse对象负责将信息返回给客户端

    HttpServletResponse对象只产生一个空的HTTP响应

    传回自定义的内容需要使用getWriter()或者getOutputStream()方法

    –传送普通文本

    –传送二进制内容 

     

    请求重定向和自动刷新页面

    重定向的原理:(看三张图片):

             

                

              

    使用sendRedirect(String URL)方法实现重定向,

    在指定时间内自动刷新当前页或到一个新的页面
    根据时间来控制响应
    想在响应中有一个短时间的暂停 

    response.setHeader("Refresh", "time; URL=url" );

     总结:
    请求URL时HTTP发出了多个请求
    状态码告诉浏览器发送的内容及格式状态
    Servlet API与容器进行通讯
    HttpServletResponse定义的常量来避免直接使用整数
    在通过PrintWriter对象发送任何内容之前先调用 HttpServletResponse的setStatus()方法
    为了让Servlet发挥最大的效能,HttpServletResponse对象用于操纵响应的HTTP头
    getWrite()或者getOutputStream()方法传送文本或者二进制内容给客户端
    sendRedirect方法实现重定向
    HTTP响应头“Refresh”会根据时间来控制响应
     
  • 相关阅读:
    Windows:C:WindowsSystem32driversetchosts
    Quartz:Cron Expressions
    RabbitMQ:基本命令
    架构:一致性
    Javascript:自己写异步流程编程框架
    Python:Hello World级别的SimpleDb
    架构:互联网架构
    数据访问:三大范式
    数据访问:Implementing Efficient Transactions
    技术人生:special considerations that are very important
  • 原文地址:https://www.cnblogs.com/hellokitty1/p/4894044.html
Copyright © 2011-2022 走看看