本文实例为大家分享了java web实现自动登录功能的具体代码,供大家参考,具体内容如下
主要思路就是:当用户访问网站的首页时,浏览器端会先检擦浏览器中存在的cookie中是否又登录的用户的用户名,如果有,则直接跳转至用户登录好的界面,如果没有,则重定向至登录界面,在服务器端创建该用户登录的cookie,响应时,将创建的cookie返回至浏览器端保存。
一、用户访问首页时检查cookie是否存在。
package ahpudong.com; import java.io.IOException; import java.io.PrintWriter; 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; @WebServlet("/index.do") public class index extends HttpServlet { public index() { super(); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Cookie[] cookies=request.getCookies(); if(cookies!=null){ for(Cookie cookie:cookies){ String name=cookie.getName(); String value=cookie.getValue(); if("name".equals(name) && "chendong".equals(value)){ request.setAttribute(name, value); request.getRequestDispatcher("user.view").forward(request, response); return; } } } response.sendRedirect("login.jsp"); } }
二、确定用户登录的cookie不存在,在手动登录的过程中创建用户登录cookie。
package ahpudong.com; import java.io.IOException; import java.io.PrintWriter; 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; @WebServlet("/login.do") public class login extends HttpServlet { public login() { super(); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8"); PrintWriter out = response.getWriter(); String name=request.getParameter("name"); String pwd=request.getParameter("pwd"); String login=request.getParameter("auto"); if("chendong".equals(name) && "123456".equals(pwd)){ if("on".equals(login)){ Cookie cookie=new Cookie("name","chendong"); cookie.setMaxAge(7*24*60*60);//有效期为一个星期 response.addCookie(cookie); request.setAttribute("name",name); request.getRequestDispatcher("user.view").forward(request, response); } }else{ response.sendRedirect("login.jsp"); } } }
三、登录成功时的视图层
package ahpudong.com; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/user.view") public class User extends HttpServlet { public User() { super(); } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request,response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request,response); } public void processRequest(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException{ response.setCharacterEncoding("utf-8"); PrintWriter out=response.getWriter(); String name=(String) request.getAttribute("name"); out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">"); out.println("<HTML>"); out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>"); out.println(" <BODY>"); out.println("<h1>"+"welcome "+name+" login"+"</h1>"); out.println(" </BODY>"); out.println("</HTML>"); out.flush(); out.close(); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍JavaWeb登陆功能实现代码,包括了JavaWeb登陆功能实现代码的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了JavaWeb登陆功能的方法,供大家参考,具体内容如下 首先我们要JavaWeb登陆的基本流程:JSP页面发送请求——>Servlet——>Servlet通过调用方法从数据库中得到数据并将结果返回页面。 我们先建立三个jsp页面,包括login.jsp(登
本文向大家介绍SpringBoot 配合 SpringSecurity 实现自动登录功能的代码,包括了SpringBoot 配合 SpringSecurity 实现自动登录功能的代码的使用技巧和注意事项,需要的朋友参考一下 自动登录是我们在软件开发时一个非常常见的功能,例如我们登录 QQ 邮箱: 很多网站我们在登录的时候都会看到类似的选项,毕竟总让用户输入用户名密码是一件很麻烦的事。 自动登录功能
本文向大家介绍spring security实现下次自动登录功能过程解析,包括了spring security实现下次自动登录功能过程解析的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了spring security实现记住我下次自动登录功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一、原理分析 第一次登陆时,如果用户勾选了re
本文向大家介绍selenium+python实现自动登录脚本,包括了selenium+python实现自动登录脚本的使用技巧和注意事项,需要的朋友参考一下 os:windows 前提:Python,selenium,IEDriverServer.exe,ie浏览器 首先安装Python2.7 安装成功后,计算机联网状态下在cmd命令行下输入:pip install -U selenium sele
本文向大家介绍python自动化实现登录获取图片验证码功能,包括了python自动化实现登录获取图片验证码功能的使用技巧和注意事项,需要的朋友参考一下 主要记录一下:图片验证码 1.获取登录界面的图片 2.获取验证码位置 3.在登录页面截取验证码保存 4.调用百度api识别(目前准确率较高的识别图片api) 本次登录的系统页面,可以看到图片验证码的位置 上面我们已经把图片保存到本地 这就是我们截取
问题内容: 我想要在spring成功注册后自动登录:我有一个受保护的页面,需要登录才能访问它们,我要在注册后跳过登录页面并进行自动登录,以便用户可以看到受保护的页面有我吗?我正在使用spring 3.0,spring security 3.0.2,该怎么做? 问题答案: 可以通过以下方式(半伪代码)通过spring安全性完成此操作: 更新:仅包含注册后如何创建会话