会话跟踪主要是用在用户页面点击不同的页面时,需要用到的技术点
会话:多次请求与响应的过程
1,url地址传递参数,实现页面跟踪技术
格式:传一个参数的
url?名=值
传两个参数的
url?名=值 &名=值
关键代码实例:
// 获得提交的数据 String userName = request.getParameter("userName"); String userPwd = request.getParameter("userPwd"); System.out.println(userName + " " + userPwd); if ("abc".equals(userName) && "111".equals(userPwd)) { response.sendRedirect("suc.jsp?n=" + userName + "&p=" + userPwd); }
在登录成功的页面获取账号的密码信息;
<% //获取账号和密码 String names = request.getParameter("n"); String pwd = request.getParameter("p"); %> 账号:<%=names%> 密码:<%=pwd %>
url传递参数会将传递会显示条状页面的网页地址栏中
2,form表单的隐藏域传递参数
格式如下:
form> <input type="hidden" name="名" value=“值”/> <input type="hidden" name="名" value=“值”/> </form>
使用技术的关键代码实例:
传递姓名和密码:
// 获得提交的数据 String userName = request.getParameter("userName"); String userPwd = request.getParameter("userPwd"); System.out.println(userName + " " + userPwd); if ("abc".equals(userName) && "111".equals(userPwd)) { request.setAttribute("aaa",userName); //使用隐藏域,不能使用重定向请求 request.getRequestDispatcher("suc.jsp").forward(request, response); }
在jsp页面中获取账号和密码:
<% //获取java代码中的属性 String name = (String)request.getAttribute("aaa"); %> <form action="addBlog" method="post"> //隐藏域获取jsp中的数据 <input type="hidden" name="uname" value="<%=name %>" /> </form>
3,Cookie会话跟踪技术;
Cookie是保存在浏览器缓存/或临时文件中的一系列文本数据
//创建Cookie
Cookie ck = new Cookie("名",值); response.addCookie(ck);
//获取Cookie
Cookie[] cks = request.getCookies(); for(Cookie ck:cks){ String name = ck.getName(); String value = ck.getValue(); }
Cookie的作用:
1.跟踪特定对象:记录浏览过的商品 2.统计网页的访问次数 3.简化登录过程:自动登录
Cookie特点:
1.Cookie一定是保存在浏览器中的文本 2.Cookie不安全,容易泄露个人信息 3。用户可以禁用浏览器的Cookie功能
Cookie分为:
临时性Cookie:保存在浏览器的缓存中,当浏览器关闭后就没有了 持久性Cookie:保存在系统的临时文件夹中,达到有效期后失效 如何保存持久性Cookie: 只要给Cookie设置有效时间,就是一个持久性Cookie Cookie ck = new Cookie("名",值); ck.setMaxAge(60);
Cookie的使用技术:
关键代码实例:
// 获得提交的数据 String userName = request.getParameter("userName"); String userPwd = request.getParameter("userPwd"); System.out.println(userName + " " + userPwd); if ("abc".equals(userName) && "111".equals(userPwd)) { response.sendRedirect("suc.jsp?n=" + userName + "&p=" + userPwd); //使用Cookie来保存数据 Cookie cookie = new Cookie("user", userName+","+userPwd); //将获取的Cookie数据放在浏览器中 response.addCookie(cookie); //设置时间 cookie.setMaxAge(100); }
在jsp中获取Cookie保存的数据
<% String uname="",upwd=""; //获取Cookie中的键值 Cookie[] cs = request.getCookies(); if(cs!=null){ for(int i=0;i<cs.length;i++){ Cookie c =cs[i]; if(c.getName().equals("user")){ String str = c.getValue(); String[] s = str.split(","); uname = s[0]; upwd = s[1]; } } } %> <form action="LoginServlet" method="post"> 账号:<input type="text" name="userName" value="<%=uname %>"/> 密码:<input type="password" name="userPwd" value="<%=upwd %>"/> <input type="submit" value="提交"/> </form>
浏览器可以关闭Cookie功能
4,Seesion会话跟踪技术;
格式:
HttpSession 会话对象 //获得Session HttpSession session = request.getSession(); //设置数据 session.setAttribute("名",值); //获取数据 Object obj= session.getAttribute("名");
Seesion传递参数的关键代码实例:
// 获得提交的数据 String userName = request.getParameter("userName"); String userPwd = request.getParameter("userPwd"); System.out.println(userName + " " + userPwd); if ("abc".equals(userName) && "111".equals(userPwd)) { response.sendRedirect("suc.jsp?n=" + userName + "&p=" + userPwd); //将账号保存到Session对象中 HttpSession session = request.getSession(); session.setAttribute("bbbb",userName); }
java获取Session传递的参数;
HttpSession session = request.getSession(); String name =(String)session.getAttribute("bbbb"); //输出 System.out.println("用户名:"+name);
Session会话跟踪式存在于服务器的Cookie会话跟踪是存在与浏览器的
相关推荐
第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...
java web整合开发王者归来光盘代码-第五章 会话跟踪 (JSP+Servlet+Struts+Hibernate+Spring)
会话跟踪 4.1 会话管理 4.2 通过Cookie支持会话 4.3 URL重写与隐藏表单域 4.1.1 理解状态与会话 4.1.2 会话管理机制 4.1.3 HttpSession接口 4.1.4 使用HttpSession对象 4.1.5 会话超时与结束
第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等; 第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等; 第4篇为...
完整版Java JSP web开发教程 03_会话跟踪简介(共22页).ppt 完整版Java JSP web开发教程 04_JavaMail和Servlet(共22页).ppt 完整版Java JSP web开发教程 05_JSP简介(共17页).ppt 完整版Java JSP web开发教程 06...
第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...
第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...
第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...
第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...
java web 会话跟踪, 不会的,哥这有源码个ppt, 下载去瞧瞧就ok啦. 吼吼..............
完整版Java JSP web开发教程 03_会话跟踪简介(共22页).ppt 完整版Java JSP web开发教程 04_JavaMail和Servlet(共22页).ppt 完整版Java JSP web开发教程 05_JSP简介(共17页).ppt 完整版Java JSP web开发教程 06...
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》重点讲解了Struts 2、Speing和HIbernate框架的基础知识和高级技术,如Sruts 2中的*、类型转换、国际化和标签等,HIbe rna{e的会话、0/R映射和...
第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...
第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》重点讲解了Struts 2、Speing和HIbernate框架的基础知识和高级技术,如Sruts 2中的*、类型转换、国际化和标签等,HIbe rna{e的会话、0/R映射和...
第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...
第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...
9.2 java servlet api的会话跟踪 306 9.2.1 httpsession接口 306 9.2.2 session的生命周期 307 9.2.3 cookie的应用 319 9.2.4 httpsessionbindinglistener接口 328 9.2.5 在线人数统计程序 329 9.3 小结 335 ...
完整版Java JSP web开发教程 03_会话跟踪简介(共22页).ppt 完整版Java JSP web开发教程 04_JavaMail和Servlet(共22页).ppt 完整版Java JSP web开发教程 05_JSP简介(共17页).ppt 完整版Java JSP web开发教程 06...