来源:自学PHP网 时间:2015-04-14 14:51 作者: 阅读:次
[导读] 在JSP中,使用cookie,有以下几个步骤:1 使用page指令导入类javax servlet http cookie%@ page import=javax servlet http Cookie %2 创建Cookie对象Cookie newCookie=new Cookie(String key,Object...
在JSP中,使用cookie,有以下几个步骤:
1.使用page指令导入类javax.servlet.http.cookie
<%@ page import="javax.servlet.http.Cookie" %>
2.创建Cookie对象
Cookie newCookie=new Cookie(String key,Object value);
3.写入Cookie
在创建Cookie对象后,我们使用response对象的addCookie()方法实现写入cookie,代码如下:
response.addCookie(newCookie);
4.读取Cookie
JSP通过response对象的addCookie方法写入Cookie后,读取时将会调用JSP中的request对象的getCookies方法,该方法将会返回一个HTTP请求头中的内容对应的cookie对象数组,因此必须要通过遍历的方式进行访问.
必须使用重定向,才可以在客户端写入cookie.
下面的代码是实现:用户登录成功后,将用户的信息保存到cookie中,然后在欢迎页面中,读取并显示。
登录页面login.jsp
[html]
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>用户登录</title>
</head>
<body>
<form name="loginForm" method="post" action="doLogin.jsp">
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="userName"/></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="pwd"/></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="登录"/></td>
</tr>
</table>
</form>
</body>
</html>
登录处理页面:doLogin.jsp
[html]
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>登录处理页面</title>
</head>
<body>
<%
request.setCharacterEncoding("UTF-8");
String name=request.getParameter("userName");
String pwd=request.getParameter("pwd");
if("sa".equals(name.trim())&&"123".equals(pwd.trim())){
//以Key\Value的形式创建Cookie
Cookie uname=new Cookie("uname",name.trim());
response.addCookie(uname);
response.sendRedirect("welcome.jsp");
}
%>
</body>
</html>
欢迎页面:weclome.jsp
[html
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="javax.servlet.http.Cookie" %>
<html>
<head>
<title>欢迎页面</title>
</head>
<body>
<%
//获取请求中的Cookie,以数组方式保存
Cookie cookies[]=request.getCookies();
//循环遍历数组,得到key为"uname" 的Cookie
for(int i=0;i<cookies.length;i++){
Cookie ucookie=cookies[i];
if(ucookie.getName().equals("uname")){ //判断Cookie的名称
//获取key对应的Value,输出显示
out.println("欢迎你 :"+ucookie.getValue());
}
}
%>
</body>
</html>
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com