中午吃完饭,将上午完成的用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,我们可以利用HttpServletRequest对象的`getCookies()`方法,该方法返回一个Cookie数组,包含了所有发送到服务器的Cookie。以下是一个读取Cookie的例子: ```jsp ; charset=UTF-8" %> Cookie[]...
### JSP中的Cookie操作 在Web开发中,Cookie是一种...通过以上介绍,我们可以了解到在JSP中如何有效地利用Cookie来进行用户状态的管理和信息的持久化存储。这对于实现登录状态保持、个性化推荐等功能具有重要意义。
**标题解析:** "jsp--3....综上,"jsp--3.cookies"可能涵盖了Cookie的基本操作、属性设置、读取、安全性和应用场景等知识点。通过学习这个主题,开发者可以更好地理解和利用Cookie来优化Web应用的功能和用户体验。
在Java Servlet和JSP中,我们通常使用javax.servlet.http.Cookie类来操作Cookies。创建一个新的Cookie实例,需要提供一个名字和值,例如: ```java Cookie cookie = new Cookie("username", "JohnDoe"); ``` 接着...
5. **cookies操作**:设置和读取客户端cookies,实现用户登录状态持久化。 6. **转发和重定向**:使用`<jsp:forward>`和`response.sendRedirect()`处理页面跳转。 7. **自定义标签**:创建和使用自定义JSP标签,...
在"JSP购物网站代码"这个项目中,我们可以深入理解如何利用JSP来构建一个功能完备的在线购物平台。JSP结合了HTML、Java代码和内置对象,为开发人员提供了方便的方式来生成动态内容。 首先,JSP的核心是Java代码,它...
有效的Ajax应用会考虑性能优化,如减少HTTP请求次数(例如通过合并CSS和JavaScript文件)、利用HTTP缓存策略、压缩传输数据等。 10. **跨域问题** 如果Ajax请求跨越了不同的域名,会遇到同源策略限制。开发者可能...
学习这些实例可以帮助初学者理解JSP的基本工作原理,以及如何利用JavaScript(标签中的"javascript_cookie"可能指的是JSP与JavaScript交互的部分)和cookie进行动态网页开发。同时,对于开发者来说,通过实践这些...
总结来说,这个新闻网站项目提供了一个实践Java和JSP技术的机会,涵盖了Web开发的多个重要方面,包括前后端交互、数据库操作、用户体验设计和安全性。对于学习者而言,这是一个极好的案例,能够深入理解Web开发的...
在这个【JSP小例子(100)】中,你可能会发现各种应用场景,如用户登录验证、分页显示、文件上传下载、邮件发送、数据库操作等。这些实例涵盖了JDBC(Java Database Connectivity)与数据库交互、会话管理、cookies...
总结,这个项目为我们展示了如何利用JSP、Servlet和MVC模式来实现一个基本的无数据库购物车系统,提供了对这些技术实际应用的理解和实践。通过这个项目,开发者可以深入学习Web开发的基本流程,为更复杂的Web应用...
4. **会话管理**:利用Cookies和Session管理用户会话状态。 5. **错误处理**:设计错误页面,处理异常情况。 #### 六、进阶话题 1. **MVC架构**:学习如何使用Model-View-Controller模式构建应用程序。 2. **框架...
【标题】"用jsp实现网络购物系统"是一个项目实践,主要展示了如何利用JavaServer Pages (JSP) 技术来构建一个完整的在线购物平台。在Web开发领域,JSP是用于创建动态网页的一种技术,它结合了Java语言的强大力量和...
4. JSP动作标签:如`<jsp:useBean>`, `<jsp:setProperty>`, `<jsp:getProperty>`,用于操作JavaBeans组件。 5. JSP自定义标签:通过实现`javax.servlet.jsp.tagext.Tag`接口,可以创建自定义的可重用组件。 在提供...
4. **JSTL(JavaServer Pages Standard Tag Library)**:为了简化页面逻辑,可能会利用JSTL标签库来处理条件判断、循环、数据操作等任务。 5. **cookies和session**:可能通过cookies或session跟踪用户会话,以便...
这个实验提供了实际操作这些概念的机会,通过编写和运行这些JSP页面,学生能够更深入地理解JSP内置对象的工作原理及其在实际项目中的应用。在阅读和分析源码的过程中,可以学习如何有效地利用这些对象来实现用户交互...
40、IF控制符的操作 41、HttpServletRequest 接口所提供的方法 42、 网上测验 43、HttpSession - session 对象 44、 多选型列表框 45、解决浏览器 cache 的问题 46、使用 EL、JSTL 处理表单数据 47、 EL隐含对象 ...
"jsp 通过cookie 记住用户名"这个主题涉及到的是如何利用Cookie技术在用户访问网站时记住他们的用户名,以便于提供更好的用户体验,比如自动填充登录信息。下面将详细阐述这一知识点。 首先,Cookie是一种在客户端...
在实际的JSP页面中,你可以使用EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)来简化操作。例如,用JSTL的`c:if`和`c:out`标签判断和显示Cookie: ```jsp ${not empty cookie....