四种跨页面传值方式有何差异,各自使用于什么情况

 我来答
匿名用户
2017-04-11
展开全部
不同的页面间传值使用很普遍,非常重要,传值方式有四种分别是cookie,session,sendRedirect和超链接,隐藏表单
   1.cookie主要用于记录用户的一些信息,例如记录用户的登录信息使用户一段时间内不用登录,它有服务器创建,并放在客户端(用户登录时的电脑上(一般可以在浏览器 工具——》Internet选项——》点击第一个设置——》查看文件 在这里可以找到上网的记录,包括一些小的视频和cookie,从这一点来看cookie并不安全,可以在cookie看到密码)),当使用时,服务器就会从电脑上获取,然后验证,一个用户有一个cookie,而且cookie的存在时间不受任何影响,关机都不会影响cookie。
   2.session是存放在服务器端的数据,每当双击打开浏览器时就会有一个session,也就是说每一个浏览器一个session,session的使用时间是受使用影响的,当关机时候session就不会再存在,当session没有到期时如果使用,session就会重新计时。可以用于判断用户的合法(是否通过用户名,密码登陆的),传递用户名(sendRedirect是明文传值,值会再地址栏显示出来,不能用于传重要数据,例如密码),jsp页面的session与servlet中的session是共用的。
   3.sendRedirect或超链接是转向某页面并可以传值例如res.sendRedirect("logincl?username="+name1+"&psw="+pass1);在转向的页面通过下面的语句获取值
String u = req.getParameter("username");String p = req.getParameter("psw");
超级链接:("<a href=welcome?pagenow=" + i + ">" + i+ "</a>");
接收值:String pagenow = req.getParameter("pagenow");
可以用于传错误信息等保密性不是很强的信息
4.隐藏表单
pw.println("<input type=hidden name=sex value=男<br>");
在转向的页面可以用下面的语句接收
String s=req.getParameter("sex");
也听会歌好
2017-04-11 · TA获得超过755个赞
知道小有建树答主
回答量:2288
采纳率:74%
帮助的人:320万
展开全部
注意一个常识性问题,对于session,超时的几率远不及异常丢失的几率。考虑安全性,首选数据库传值。考虑性能,首选cache。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
n6...3@33sn.cc
2017-04-11 · 超过61用户采纳过TA的回答
知道答主
回答量:182
采纳率:100%
帮助的人:46.9万
展开全部
session 需要服务器写权限,是不是存放session的目录,禁止写了?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式