HttpServletResponse sendRedirect重定向
HttpServletResponse中一般用sendRedirect进行重定向,sendRedirect进行重定向做了下面2件事:
1. 设置HTTP响应报头中的Status为302
2. 设置HTTP响应报头中的Location值为指定的URL
用法
HttpServletResponse.sendRedirect("url?参数名1=参数值&参数名2=参数值");
实例
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { /*方法一:使用response.sendRedirect*/ // response.sendRedirect("index.html"); /*方法二:设置响应头和重定向地址*/ response.setHeader("Location", "index.html"); response.setStatus(HttpServletResponse.SC_FOUND);//设置302状态码,等同于response.setStatus(302); }
sendRedirect重定向不可以在页面中共享HttpServletRequest对象中的数据。但是可以通过重定向的url中携带需要的参数,但这里的参数只能携带字符串的参数。但是其优点是重定向时浏览器默认是使用get请求方式,这样的请求方式速度更快一点。但是安全性却不高。
版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。