Servlet处理响应10

1.使用输出流构建响应
例子

PrintWriter out = response.getWriter();
        out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
        out.println("<HTML>");
        out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
        out.println("  <BODY>");
        out.print("    This is ");
        out.print(this.getClass());
        out.println(", using the GET method");
        out.println("  </BODY>");
        out.println("</HTML>");
        out.flush();
        out.close();

这种写法不利于程序的维护以及编写
不利于重用

设置响应状态码:
setStatus
sendError

public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        //response.setStatus(500);
        //response.sendError(404, "not found");
        //response.setContentType("text/html");
        response.sendRedirect("result.html");
    }

前台重定向
将需要发送给客户端的url作为httpServletResponse中sendRedirect方法中的参数,服务器会返回一个状态码3xx及location字段一遍告诉浏览器进行重定向
重定向的地址栏会发生变化,说明发了两次请求,一次显式发,一次浏览器得到状态码,重新又发了一次,这就是前台重定向。如果有数据要展示的话就不合适了,那么就要使用后台转发了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值