`
百合不是茶
  • 浏览: 345084 次
社区版块
存档分类
最新评论
阅读更多

会话跟踪主要是用在用户页面点击不同的页面时,需要用到的技术点

 

会话:多次请求与响应的过程

 

 

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会话跟踪是存在与浏览器的

0
0
分享到:
评论

相关推荐

    Java Web整合开发王者归来:Java Web.part3

    第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...

    java web整合开发王者归来光盘代码-第五章 会话跟踪

    java web整合开发王者归来光盘代码-第五章 会话跟踪 (JSP+Servlet+Struts+Hibernate+Spring)

    java_web_第4章_会话跟踪.ppt

    会话跟踪 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 会话超时与结束

    Java.Web整合开发王者归来.part1

    第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等; 第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等; 第4篇为...

    完整版Java JSP web开发教程 03_会话跟踪简介(共22页).ppt

    完整版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整合开发王者归来

    第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...

    Java Web整合开发王者归来(共4部分含源代码)part3

    第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...

    Java Web整合开发王者归来(共4部分含源代码)part4

    第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...

    Java Web整合开发王者归来(JSP+Servlet+Struts+Hibernate+Spring)

    第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...

    第5章 会话跟踪.rar

    java web 会话跟踪, 不会的,哥这有源码个ppt, 下载去瞧瞧就ok啦. 吼吼..............

    完整版Java JSP web开发教程 全套PPT课件资料 共13个章节.rar

    完整版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开发技术大全

    《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》重点讲解了Struts 2、Speing和HIbernate框架的基础知识和高级技术,如Sruts 2中的*、类型转换、国际化和标签等,HIbe rna{e的会话、0/R映射和...

    Java Web整合开发王者归来:Java Web.part1

    第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...

    Java Web整合开发王者归来:Java Web.part2

    第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...

    java web技术开发大全(最全最新)

    《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》重点讲解了Struts 2、Speing和HIbernate框架的基础知识和高级技术,如Sruts 2中的*、类型转换、国际化和标签等,HIbe rna{e的会话、0/R映射和...

    Java.Web整合开发王者归来.part12.rar

    第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...

    Java Web整合开发王者归来(共4部分含源代码)part1

    第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    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开发教程 01_web概述(共18页).ppt

    完整版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...

Global site tag (gtag.js) - Google Analytics