response对象转发重定向

Posted twinkle-star

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了response对象转发重定向相关的知识,希望对你有一定的参考价值。

1.response:响应。
      该对象是用来响应用户请求后的结果。
2.response中的常用方法:
     response.setCharacterEncoding();该方法用来处理响应时的字符集编码问题。
     response.sendRedirect("要跳转的url地址").该方法用来重定向页面。浏览器的地址栏地址会发生改变
3.转发:
    a.为什么要使用转发
        因为request请求到服务器后,该request中的数据会失效,那么无法将请求数据传递到其它页面,所以,使用转发进行处理。
       转发对象使用request进行创建:
       RequestDispatcher rd = request.getRequestDispatcher("转发到的地址");
       rd.forward(request,response);
       //注意:请求成功后,request对象的数据不存在了,所以在转发对象创建前,
                   使用request.setAttribute("",object)将要转发的数据放入 request作用域。然后进行转发操作。

 

 1 <body>
 2     <%
 3         //获取用户提交的登录信息(获取请求信息使用request对象中的getParameter())
 4         String name = request.getParameter("uname");
 5         String pwd = request.getParameter("upwd");
 6         if("jack".equalsIgnoreCase(name)&&"000000".equalsIgnoreCase(pwd)){
 7             //登录成功页面重定向
 8             //response.sendRedirect("main.jsp");
 9             //如果需要将该页面的数据在页面跳转页面的同时一并进行传递时,用转发
10             //将要转发的数据放入request作用域
11             request.setAttribute("uname", name);
12             //创建转发对象
13             RequestDispatcher rd = request.getRequestDispatcher("main.jsp");
14             rd.forward(request, response);
15         }
16     %>
17     <%="姓名:"+name+",密码:"+pwd %>
18 </body>

 

1 <%
2     //从request作用域中获取setAttribute()中的数据
3     String name = String.valueOf(request.getAttribute("uname"));
4     %>
5     <%="欢迎:"+name+",登录" %>

 













以上是关于response对象转发重定向的主要内容,如果未能解决你的问题,请参考以下文章

Servlet中的转发与重定向的区别

JSP内置对象request对象的转发与response对象的重定向

response请求转发和重定向,cookie

ServletRequest的请求转发和Response重定向的不同

request重定向或者是response转发请求后面的代码依然执行

response.sendRedirect()和request.getRequestDispatcher().forward(request,response)使用