JSP入门之用户会话-java课程免费学习,高薪触手可得
来源 :中华考试网 2020-11-30
中在实际的开发中,一个网页经常是要基于另一个网页的,这就要求这两个网 页中有信息交流的。但是,HTTP是无状态协议,无法为我们保存信息。比如我们在登录页面中登录了,在以后的使用中必须让服务器知道我们已经登录了,比如 在后面操作中要要根据用户名来查询用户的相关信息,这是就必须想办法记住这个用户的用户名。在这节中我们将重点讲解如何解决这个问题。
让客户端记住数据并返回给web服务器主要有4种技术:
隐藏域
HTML窗体支持HIDDEN类型的输入元素,隐藏域域HTTP请求中的其他窗体参数一起被发送到Web服务器,但他们没有任何可视表示。隐藏域的语法如下:
XML/HTML代码
下面我们通过下面例子了解下隐藏域的用法,新建一个JSP页面命名为TestHidden:
XML/HTML代码
在建一个JSP页面命名为Result.jsp
XML/HTML代码
当我们调用TestHidden.jsp页面单击提交之后就会在页面显示出welcome to jcourse字样。
填写下面表单即可预约申请免费试听java课程!害怕学不会?助教陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
java课程免费学习,高薪触手可得
- 地区:
- 北京
- 天津
- 上海
- 江苏
- 浙江
- 山东
- 江西
- 安徽
- 广东
- 广西
- 海南
- 辽宁
- 吉林
- 黑龙江
- 内蒙古
- 山西
- 福建
- 河南
- 河北
- 湖南
- 湖北
- 四川
- 重庆
- 云南
- 贵州
- 新疆
- 西藏
- 陕西
- 青海
- 宁夏
- 甘肃
- 姓名:
- 手机:
URL重写
URL重写比较简单,只是在URL后面加上所要传递的信息即可,如上面的例子我们就可以在所要提交到的页面的URL后面加上
?message=“welcom to jcourse”即可。
cookie
我们先来看下面这个例子,看看是如何使用cookie的。
XML/HTML代码
然后再修改刚才编写的Result.jsp如下
XML/HTML代码
name:
value:
此时我们会在页面中看到下面信息:
name:message
value:welcome to jcourse
name:JSESSIONID
value:5ADDE51EEDB7A42D98E769967BAD0D94
可能有的人会对这个结果感到惊讶,不用着急我们接下来分析下这个代码。cookie.setMaxAge(60*60*24);这段代码是设置 cookie的有效时间,我们将其设为一天。response.sendRedirect("Result.jsp");这个语句的作用是直接跳转语句到 Result.jsp页面中。那么输出结果中名字为JSESSIONID是什么呢?原来我们在创建一个JSP页面时,隐含对象Session也被添加到了 cookie中了,如果我们在page伪指令中设置session为false,这个值就会消失了,读者可以自行尝试。
会话API
前面我们已经介绍几种会话跟踪的方法,接下来我们来介绍一种更高层的方法:Javax.servlet.http.HttpSession API.
HttpSession像和Map差不多的接口,能够根据名字存储和检索对象。可通过 HttpServletRequest.getSession()创建一个会话,并保留它直至超时或参与一个会话的Servlet关闭。我们先通过下面这 个例子对session有个初步的了解:
XML/HTML代码
Result.jsp:
XML/HTML代码
同样我们还会在页面中看到welcome to jCourse字样。