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”会根据时间来控制响应
     
  • 相关阅读:
    转载在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”?
    笔试题Multicore简答题(上)
    笔试题Multicore简答题(下)
    转载深入理解const char*p,char const*p,char *const p
    笔试题mulicore编程题
    躺在被窝看蜗居,一连看到大结局,饿了揪把馒头,咽不下去吃点咸菜,我一边吃馒头,一边吃咸菜,一把抹鼻涕,一把抹眼泪
    //向块中用程序添加属性
    带参数的多线程
    扩展数据名 删除
    无法加载程序集。错误详细信息: Autodesk.AutoCAD.Runtime.Exception: eDuplicateKey
  • 原文地址:https://www.cnblogs.com/hellokitty1/p/4894044.html
Copyright © 2011-2022 走看看