JSP中forward方法

request.getRequestDispatcher("login_success.jsp").forward(request,response);这句话中forwa... request.getRequestDispatcher("login_success.jsp").forward(request, response);
这句话中forward方法传递的两个对象有什么作用?哪里需要用到吗?
第一个登录页面跳转到这个界面,传递了请求信息用户名和密码,然后这个界面要跳转到登录成功界面,在登录成功界面为什么不能用request.getAttribute(“username”)来获得用户名。得到的是null。
展开
 我来答
tianweisong86
2015-04-24 · TA获得超过781个赞
知道小有建树答主
回答量:483
采纳率:100%
帮助的人:283万
展开全部
首先你要明白request和response
// 这个是你在需要修改request或response之后需要重新传给login_success.jsp这个jsp页面。
request.getRequestDispatcher("login_success.jsp").forward(request, response);


//获取不到值
request.getAttribute("username");

这个问题你要确定你确实是要使用

request.getAttribute("username");

而不是使用

session.getAttribute("username");

前者你要在servlet里

request.setAttribute("username", username);
// 一次传参数,速度快,参数只能取一次

后者

request.getSession().setAttribute("username", username);
// 在一次会话中都可以使用(打开页面到关闭页面)

这个问题你需要去理解三个东西request、response、session

永瑛4P
2015-04-24 · 超过44用户采纳过TA的回答
知道小有建树答主
回答量:89
采纳率:0%
帮助的人:54万
展开全部
1.这句话中forward方法传递的两个对象有什么作用?哪里需要用到吗?
request封装了请求信息,response封装了响应信息.
这里的forward只是作为参数传过来,很多地方都用到了,比如解耦。

2.在登录成功界面为什么不能用request.getAttribute(“username”)来获得用户名
肯定不能了request.getAttribute(“username”)是取request.setAttribute(“username”)的值
这里的值要用equest.getparameter(“username”)取。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
铁枫亢宛筠
2019-08-09 · TA获得超过3853个赞
知道大有可为答主
回答量:3080
采纳率:26%
帮助的人:196万
展开全部
用户名是否为空或者两次输入密码是否相等应该用js来做。至于验证用户是否存在则才是后台的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式