首页 > 代码库 > jsp中利用response.senddirect(str)重定向,传递参数新思路
jsp中利用response.senddirect(str)重定向,传递参数新思路
用Servlet进行请求重定向,参数传递好办,直接用request.setAttribute(str1,str2);
但是如果不用Servlet 而是直接用jsp进行转发呢?
我们首先要知道 请求的重定向:在最终的Servlet中,request对象和中转的那个request不是同一个对象
所以传递参数,自然就获取不到了
下面我们换思路,另辟蹊径,我们用session session的生命周期长啊 所以完全可以获取
至于session与request的知识,请查阅相关资料
下面贴出登录出现密码或用户名错误 跳转至login页面
<% userBean bean = new userBean(); String name = request.getParameter("userName"); String password = request.getParameter("userPassword"); String str1 = ""; if(bean.isVerifyLoginInfo(name, password)) str1 = "login success"; else { str1 = "fail in login,password or username has error."; %> <%-- 请求转发 <jsp:forward page="login.jsp"> <jsp:param name="error" value="http://www.mamicode.com/"/> </jsp:forward> --%> <% //请求重定向 session.setAttribute("error",str1); //request.setAttribute("error",str1); response.sendRedirect("login.jsp"); }%>
<%
//利用重定向获取到的参数属性 //String str = (String)session.getAttribute("error"); String str = (String)request.getAttribute("error"); /*利用请求转发获取的参数 String str = request.getParameter("error"); if(str == null) str=""; */ if(str == null) str=""; %> <h2 align="center"><font color="red"><%=str %></font></h2>
userBean对用户检测部分进行了封装。这个自己可以动手写一下。
jsp中利用response.senddirect(str)重定向,传递参数新思路
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。