`
直线曲线
  • 浏览: 47072 次
  • 性别: Icon_minigender_1
  • 来自: 河北
社区版块
存档分类
最新评论

利用jsp操作cookies

    博客分类:
  • jsp
 
阅读更多
中午吃完饭,将上午完成的用jsp操作cookies的小test粘贴到这里。虽然是很陈旧的知识了,但是毕竟是一次学习。放到这里,希望给予需要的人以帮助。
基本目的为:选择‘保存’并填写input内容后提交,能够在cookie中保存信息,再次打开index页面时,可以达到不用再次输入input的目的。
index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="javax.servlet.http.Cookie" %>
<%@ page language="java" import="java.net.*" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>cookie test</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
	<script type="text/javascript" src="<%=basePath%>/js/jquery-1.3.2.min.js"> </script>
	<script type="text/javascript" src="<%=basePath%>/js/jquery-pack.js"></script>
	  
<% //遍历所有cookies,判断所用到的cookies的取值 。
				 Cookie[] myCookie = request.getCookies();
				 int checked = 0;
				 String userName = "";
				 if(myCookie!=null && myCookie.length!=0){
					 for(int n=0; n<=(myCookie.length-1); n++){
						    Cookie newCookie = myCookie[n];
						    if(newCookie.getName().equals("save")){
						    	if(null != newCookie.getValue()){
						    		checked = 1;
						    		//解码。
						    		userName = URLDecoder.decode(newCookie.getValue(),"utf-8");						    	
}else{
						    		checked = 0;
						    	}
						     }				      
						 }			 
				 }			
				%>
	<script type="text/javascript">
	$(function(){
		//依据checked,判断是否选否选择保存cookie
				if(<%=checked%>==1){
					$('#saveCookie').attr('checked', 'checked');
					$('#username').val("<%=userName%>");
				}else{
					 $('#saveCookie').removeAttr('checked');
					}
			});
	</script>

  </head>

  <body>

					
    <br/>
    <br/>
    <div align="center">
    	<div>
    		<form id="form" action="doCookie.jsp" method="post">
   			<lable>用户名</lable>
   			<input id="username" name="username" type="text"></input>
    		<label>保存cookie</label>
    		<input id="saveCookie" name="saveCookie" type="checkbox"/>
    		<input id="button" type="submit" value="提交"/>
    		</form>
    	</div>
    	<br/>
    </div>
  </body>

</html>

doCookie.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="javax.servlet.http.Cookie" %>
<%@ page language="java" import="java.net.*" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'saveCookie.jsp' starting page</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
  	<%//处理cookies。
  						String saveCookie = request.getParameter("saveCookie");
  						//已经是中文了
  						String userName = new String(request.getParameter("username").getBytes("ISO8859-1"),"utf-8");						Cookie cookie = null;
						if(saveCookie != null){
							//为了让cookie中能够添加中文,在进行一次包装。
							cookie = new Cookie("save",URLEncoder.encode(userName,"utf-8")); 							cookie.setMaxAge(365*24*60);
							
						}else{
							cookie =new Cookie("save",null); 
							cookie.setMaxAge(0);
						}	
						cookie.setPath("/");
						response.addCookie(cookie);
	%>
						
  </head>

  					
						
  
  <body>
  <!-- 自动跳转 -->
	<script type="text/javascript">
		window.location = "index.jsp";
	</script>
  </body>
</html>


分享到:
评论

相关推荐

    jsp操作cookie实例

    在JSP中读取Cookie,我们可以利用HttpServletRequest对象的`getCookies()`方法,该方法返回一个Cookie数组,包含了所有发送到服务器的Cookie。以下是一个读取Cookie的例子: ```jsp ; charset=UTF-8" %&gt; Cookie[]...

    jsp中cookie操作

    ### JSP中的Cookie操作 在Web开发中,Cookie是一种...通过以上介绍,我们可以了解到在JSP中如何有效地利用Cookie来进行用户状态的管理和信息的持久化存储。这对于实现登录状态保持、个性化推荐等功能具有重要意义。

    jsp--3.cookies

    **标题解析:** "jsp--3....综上,"jsp--3.cookies"可能涵盖了Cookie的基本操作、属性设置、读取、安全性和应用场景等知识点。通过学习这个主题,开发者可以更好地理解和利用Cookie来优化Web应用的功能和用户体验。

    cookies操作总结

    在Java Servlet和JSP中,我们通常使用javax.servlet.http.Cookie类来操作Cookies。创建一个新的Cookie实例,需要提供一个名字和值,例如: ```java Cookie cookie = new Cookie("username", "JohnDoe"); ``` 接着...

    JSP实战18例源代码

    5. **cookies操作**:设置和读取客户端cookies,实现用户登录状态持久化。 6. **转发和重定向**:使用`&lt;jsp:forward&gt;`和`response.sendRedirect()`处理页面跳转。 7. **自定义标签**:创建和使用自定义JSP标签,...

    JSP购物网站代码JSP购物网站代码

    在"JSP购物网站代码"这个项目中,我们可以深入理解如何利用JSP来构建一个功能完备的在线购物平台。JSP结合了HTML、Java代码和内置对象,为开发人员提供了方便的方式来生成动态内容。 首先,JSP的核心是Java代码,它...

    Ajax网站开发典型实例JSP源码包

    有效的Ajax应用会考虑性能优化,如减少HTTP请求次数(例如通过合并CSS和JavaScript文件)、利用HTTP缓存策略、压缩传输数据等。 10. **跨域问题** 如果Ajax请求跨越了不同的域名,会遇到同源策略限制。开发者可能...

    jsp源码实例.rar_cookie_javascript cookie_jsp 实例_jsp 搜索_jsp 表单

    学习这些实例可以帮助初学者理解JSP的基本工作原理,以及如何利用JavaScript(标签中的"javascript_cookie"可能指的是JSP与JavaScript交互的部分)和cookie进行动态网页开发。同时,对于开发者来说,通过实践这些...

    用jsp做的新闻

    总结来说,这个新闻网站项目提供了一个实践Java和JSP技术的机会,涵盖了Web开发的多个重要方面,包括前后端交互、数据库操作、用户体验设计和安全性。对于学习者而言,这是一个极好的案例,能够深入理解Web开发的...

    JSP小例子(100)

    在这个【JSP小例子(100)】中,你可能会发现各种应用场景,如用户登录验证、分页显示、文件上传下载、邮件发送、数据库操作等。这些实例涵盖了JDBC(Java Database Connectivity)与数据库交互、会话管理、cookies...

    购物车jsp+servlet+MVC模式

    总结,这个项目为我们展示了如何利用JSP、Servlet和MVC模式来实现一个基本的无数据库购物车系统,提供了对这些技术实际应用的理解和实践。通过这个项目,开发者可以深入学习Web开发的基本流程,为更复杂的Web应用...

    JSP从入门到精通 (适合初学者)

    4. **会话管理**:利用Cookies和Session管理用户会话状态。 5. **错误处理**:设计错误页面,处理异常情况。 #### 六、进阶话题 1. **MVC架构**:学习如何使用Model-View-Controller模式构建应用程序。 2. **框架...

    用jsp实现网络购物系统

    【标题】"用jsp实现网络购物系统"是一个项目实践,主要展示了如何利用JavaServer Pages (JSP) 技术来构建一个完整的在线购物平台。在Web开发领域,JSP是用于创建动态网页的一种技术,它结合了Java语言的强大力量和...

    Servlet and Jsp api帮助文档

    4. JSP动作标签:如`&lt;jsp:useBean&gt;`, `&lt;jsp:setProperty&gt;`, `&lt;jsp:getProperty&gt;`,用于操作JavaBeans组件。 5. JSP自定义标签:通过实现`javax.servlet.jsp.tagext.Tag`接口,可以创建自定义的可重用组件。 在提供...

    是用JSP设计的一个软件,JSP流量统计系统

    4. **JSTL(JavaServer Pages Standard Tag Library)**:为了简化页面逻辑,可能会利用JSTL标签库来处理条件判断、循环、数据操作等任务。 5. **cookies和session**:可能通过cookies或session跟踪用户会话,以便...

    javaWeb课程实验2--jsp内置对象

    这个实验提供了实际操作这些概念的机会,通过编写和运行这些JSP页面,学生能够更深入地理解JSP内置对象的工作原理及其在实际项目中的应用。在阅读和分析源码的过程中,可以学习如何有效地利用这些对象来实现用户交互...

    JSP实例编程100例

    40、IF控制符的操作 41、HttpServletRequest 接口所提供的方法 42、 网上测验 43、HttpSession - session 对象 44、 多选型列表框 45、解决浏览器 cache 的问题 46、使用 EL、JSTL 处理表单数据 47、 EL隐含对象 ...

    jsp 通过cookie 记住用户名

    "jsp 通过cookie 记住用户名"这个主题涉及到的是如何利用Cookie技术在用户访问网站时记住他们的用户名,以便于提供更好的用户体验,比如自动填充登录信息。下面将详细阐述这一知识点。 首先,Cookie是一种在客户端...

    jsp java中实现记住密码

    在实际的JSP页面中,你可以使用EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)来简化操作。例如,用JSTL的`c:if`和`c:out`标签判断和显示Cookie: ```jsp ${not empty cookie....

Global site tag (gtag.js) - Google Analytics