javaweb中Cookie的使用
来源:互联网 发布:淘宝背景音乐喵喵喵 编辑:程序博客网 时间:2024/06/04 18:53
之前的代码中已经学习了关于javaweb的简单程序编写,现在需要使用cookie来进行参数的传递,这里以自动登录来学习。
- 首先我们需要在登陆页面中插入自动登录选项框,相应的代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>login</title></head><!-- 页面的样式文件 --><style type="text/css">body{background-color : #eee;}#first{width:500px;margin:30px auto;}</style><body><div id="first">${sessionScope.message}<br><br><form action="login.do" method="post" ><table><tr><td>用户名:</td><td><input type="text" name="username"></td></tr><tr><td>密 码:</td><td><input type="password" name="password"></td></tr><tr><td><input type="checkbox" name="check" value="check"/>自动登录<br></td></tr><tr><td><input type="submit" value="确认"></td><td><input type="reset" value="取消"></td></tr></table></form></div></body></html>
- 其次我们在验证登陆的servlet中进行cookie代码编写,但是我按照书本上的来进行发现不会实现相应的功能,所以我就按照自己的方式来完成了(页面在刷新的时候应该是先执行doget方法,但是将cookie写在doget方法里程序运行的时候并不会执行,所以我将doget要实现的功能在dopost里面来进行代码编写,最终实现了相应的功能)。相应的代码如下:
package king;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.RequestDispatcher;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * Servlet implementation class loginservlet */@WebServlet(name="loginservlet",urlPatterns={"/login.do"})public class loginservlet extends HttpServlet {private static final long serialVersionUID = 1L;String message = ""; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html;charset=utf-8");//发现写在doget方法里的代码不会执行String value1 = "",value2 = "";Cookie cookie = null;Cookie[] cookies = request.getCookies();//获得Cookie对象数组if(cookies!=null){for(int i = 0;i<cookies.length;i++){cookie = cookies[i];if(cookie.getName().equals("username")){value1 = cookie.getValue();}if(cookie.getName().equals("password")){value2 = cookie.getValue();}}if(value1.equals("admin") && value2.equals("1234")){message = "欢迎您!" + value1 + "再次登录该页面!";request.getSession().setAttribute("message", message);response.sendRedirect("register.jsp");}else{response.sendRedirect("login.jsp");}}else{response.sendRedirect("login.jsp");}}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String value1 = "",value2 = "";Cookie cookie = null;Cookie[] cookies = request.getCookies();//获得Cookie对象数组if(cookies!=null){for(int i = 0;i<cookies.length;i++){cookie = cookies[i];if(cookie.getName().equals("username")){value1 = cookie.getValue();}if(cookie.getName().equals("password")){value2 = cookie.getValue();}}if(value1.equals("admin") && value2.equals("1234")){message = "欢迎您!" + value1 + "再次登录该页面!";request.getSession().setAttribute("message", message);response.sendRedirect("register.jsp");}else{response.sendRedirect("login.jsp");}}//如果没有cookieelse{//获得用户的用户名和密码String username = request.getParameter("username").trim();String password = request.getParameter("password").trim();//Cookie代码if(!username.equals("admin") || !password.equals("1234")){message = "用户名或密码错误,请重试!";request.getSession().setAttribute("message", message);response.sendRedirect("login.jsp");}else{//如果用户选中了“自动登陆”复选框,向浏览器发送两个Cookieif(request.getParameter("check")!=null && (request.getParameter("check").equals("check"))){Cookie namecookie = new Cookie("username",username);Cookie passwordcookie = new Cookie("password",password);namecookie.setMaxAge(60*60);passwordcookie.setMaxAge(60*60);response.addCookie(namecookie);response.addCookie(passwordcookie);}message = "欢迎"+username+"你已成功登陆!";request.getSession().setAttribute("message", message);response.sendRedirect("register.jsp");}}}}
- 进行程序验证。
首先登陆界面:
登陆之后:
在Javaweb中的cookie使用上,我也是有点懵,如果哪位大神看了之后有什么不对的地方,希望能够不吝赐教。
0 0
- javaweb中Cookie的使用
- JavaWeb中cookie的使用
- JavaWeb---Cookie的使用
- 在javaWEB规范中使用Cookie
- javaweb中cookie用法
- javaWeb开发之MySQL和Cookie的使用练习中遇到的一些问题及解决
- javaweb cookie介绍和使用
- javaweb中Cookie对用户密码保存的例子
- JAVAWeb中请求Request,Response,cookie的中文乱码处理
- javaWeb-03-cookie的细节
- javaweb中的cookie的应用
- JavaWeb----Cookie的两个应用
- JavaWeb的Cookie相关操作
- php中cookie的使用
- js中cookie的使用
- JavaScript中cookie的使用
- java中cookie的使用
- js中cookie的使用
- 561. Array Partition I
- 读书笔记(VI) 少有人走的路
- 227
- esyuitextbox失去焦点验证并提示
- MySQL性能指标
- javaweb中Cookie的使用
- Reverse Words in a String III
- golang-new与make
- 关于datetimepicker时间格式的问题
- 锁相环
- JSTL与EL表达式
- 正则表达式的基本语法和在Python下的使用
- 修补bug之路——关于线程执行函数全局的问题
- I/O流