JavaWeb_利用Cookie技术实现自动登录
2015-10-21 15:13
831 查看
//------------------------------------存储Cookie------------------------------- package com.MainServlet; import java.io.File; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.MultipartConfig; 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; import javax.servlet.http.Part; /** * Servlet implementation class MainServlet */ @WebServlet(name = "/MainSerlet", urlPatterns = { "/Login", "/Result", "/SH" }) @MultipartConfig(location = "D:\\", fileSizeThreshold = 10 * 1024) public class MainServlet extends HttpServlet { private static final long serialVersionUID = 1L; private String username = null; /** * @see HttpServlet#HttpServlet() */ public MainServlet() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse * response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); String uri = request.getRequestURI(); if (uri.endsWith("/Login")) { String username = request.getParameter("username"); String password = request.getParameter("password"); String checked = "checked"; if (!username.equals("Admin") || !password.equals("123")) { response.sendRedirect("Login.jsp"); }else{ if ((request.getParameter("checkbox") != null) && (request.getParameter("checkbox").equals("1"))) { Cookie namecookie = new Cookie("username", username); Cookie wordcookie = new Cookie("password", password); Cookie checkedcookie = new Cookie("checked", checked); namecookie.setMaxAge(3600); wordcookie.setMaxAge(3600); checkedcookie.setMaxAge(3600); response.addCookie(namecookie); response.addCookie(wordcookie); response.addCookie(checkedcookie); } request.getSession().setAttribute("AAA", username); response.sendRedirect("LoginPage.jsp"); } } else if (uri.endsWith("/Result")) { Result(request, response); } else if (uri.endsWith("/SH")) { SH(request, response); } } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse * response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } protected void Result(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String quest1 = request.getParameter("quest1"); // System.out.println(quest1); String quest2 = request.getParameter("quest2"); String[] quest3 = request.getParameterValues("quest3"); String quest4 = request.getParameter("quest4").trim(); int score = 0; if (quest1 != null && quest1.equals("1")) { score += 25; } if (quest2 != null && quest2.equals("3")) { score += 25; } if (quest3 != null && quest3.length == 2 && quest3[0].equals("1") && quest3[1].equals("3")) { score += 25; } if (quest4 != null && quest4.equals("HttpServlet") || quest4.equals("javax.servlet.http.HttpServlet")) { score += 25; } // System.out.println(score); request.getSession().setAttribute("score", score); request.getSession().setAttribute("username", username); response.sendRedirect("Score.jsp"); } protected void SH(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String path = "D:" + "\\" + request.getParameter("number"); Part p = request.getPart("filename"); String message = null; File f = new File(path); if (!f.exists()) { f.mkdirs(); } // String h = p.getHeader("content - disposition"); // System.out.println(h); // String name = h.substring(h.lastIndexOf("\\")+1, h.length()-1); // System.out.println("aaa"); p.write(path + "\\" + request.getParameter("number") + ".JPG"); message = "文件上传成功"; double size = p.getSize() * 1.0 / 1024 / 1024; request.getSession().setAttribute("message", message); request.getSession().setAttribute("username", username); request.getSession().setAttribute("size", size + ""); response.sendRedirect("SHS.jsp"); } }
<pre name="code" class="java"><!------------------------读取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"> <link href="Test.css" type="text/css" rel="stylesheet"></link> <title>登录界面</title> </head> <body> <% String value1 = ""; String value2 = ""; String value3 = ""; Cookie cookie = null; boolean flag = false; Cookie[] cookies = request.getCookies(); 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 (cookie.getName().equals("checked")) { value3 = cookie.getValue(); } } } %> <div class="Login" style="background: url('Images/Face.jpg');"> <h1 align="center" style="margin-top: 80px">登录界面</h1> <form action="Login" method="post"> <table border="1" align="center" style="border-collapse: collapse; width: 300px; height: 120px; margin-top: 60px;"> <tr> <td align="center" style="font-size: 15px;">用户名</td> <td><input type="text" name="username" value="<%=value1%>" /></td> </tr> <tr> <td align="center" style="font-size: 15px;">密 码</td> <td><input type="password" name="password" size="21" value="<%=value2%>" /></td> </tr> <tr> <td> </td> <td style="font-size: 15px;"><input type="checkbox" name="checkbox" value="1" size="25" checked="<%=value3%>"/>自动登录</td> </tr> <tr> <td></td> <td><input type="submit" value="登录" /> <input type="reset" value="重置" /></td> </tr> </table> </form> </div> </body> </html>
相关文章推荐
- Task not serializable:java.io.NotSerializableExceptionon
- Java动态代理
- Java核心技术第12章(3)
- spring mvc 和 jstl
- Java F-bounded
- Java笔记集合
- springMVC 使用jstl
- struts2+spring整合框架
- JavaWeb_利用Session实现简易购物车
- struts2添加需要的jar包
- struts2+spring整合框架
- thinking in java 笔记之初始化和清除
- java开源类库pinyin4j的使用
- 首次整合struts2+spring 提交表单后报的500错误
- 【学习笔记】java核心技术学习笔记整理
- java中继承父类后this和super的区别
- 首次整合struts2+spring 提交表单后报的500错误
- JAVA的初始化顺序
- Java_多线程下的生产者与消费者实现
- 28个Java常用的工具类