四种跨页面传值方式有何差异,各自使用于什么情况
3个回答
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");
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");
展开全部
注意一个常识性问题,对于session,超时的几率远不及异常丢失的几率。考虑安全性,首选数据库传值。考虑性能,首选cache。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
session 需要服务器写权限,是不是存放session的目录,禁止写了?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询