简单实现网页登录框中的“记住我”
简单实现网页登录框中的“记住我”
登录框中通常有一个“记住我”按钮,它是用来记住当前用户输入的用户名和密码,下次用户再次登录的时候就不用重新输入直接点击登录,简单的实现使用Cookie就可以了。
Cookie机制
Cookie是浏览器(User Agent)访问一些网站后,这些网站存放在客户端的一组数据,用于使网站等跟踪用户,实现用户自定义功能。需要注意的一点是Cookie中不能存入中文,需要进行编码才能存入。
在ssm框架中Controller层可以这样实现记住我的功能
@RequestMapping("/login")
@ResponseBody
public AjaxResult login(User user, boolean remember, HttpSession session,HttpServletRequest req, HttpServletResponse resp){try {User user1 = userService.findUser(user);//把登录数据存入session中session.setAttribute(Constant.USER_IN_SESSION,user1);//判断复选框是否勾上if (remember){Cookie cookie = new Cookie("username", user1.getUsername());Cookie cookie2 = new Cookie("password", user1.getPassword());//设置有效路径cookie.setPath("/");cookie2.setPath("/");//设置有效时长(7天)cookie.setMaxAge(604800);cookie2.setMaxAge(604800);//将cookie回写到浏览器中resp.addCookie(cookie);resp.addCookie(cookie2);}else {Cookie[] cookies = req.getCookies();for (Cookie cookie : cookies) {if ("username".equals(cookie.getName()) || "password".equals(cookie.getName())){cookie.setPath("/");cookie.setMaxAge(0);resp.addCookie(cookie);}}}return new AjaxResult();}catch (Exception e){return new AjaxResult(false, e.getMessage());}}
返回值可以集合成一个实体类
public class AjaxResult {private Boolean success = true;private String error;public AjaxResult() {}public AjaxResult(Boolean success, String error) {this.success = success;this.error = error;}public Boolean getSuccess() {return success;}public void setSuccess(Boolean success) {this.success = success;}public String getError() {return error;}public void setError(String error) {this.error = error;}
}
User类
public class User {private Long id;private String username;private String password;private String nickName;public User() {}public User(Long id, String username, String password, String nickName) {this.id = id;this.username = username;this.password = password;this.nickName = nickName;}public Long getId() {return id;}public void setId(Long id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String getNickName() {return nickName;}public void setNickName(String nickName) {this.nickName = nickName;}
}
简单实现网页登录框中的“记住我”相关推荐
- html写登录框中的字,一个登录界面的PS设计和HTML/CSS实现
这样的登录界面可用在网站.桌面软件.Web软件等上面,你可以根据自己的需求改变界面配色.好的,先看看界面最终设计的效果: 1.创建登录界面的背景 在Photoshop中,选择"圆角矩形工具& ...
- 实现掘金登录框中熊猫状态的改变案例
今天登录掘金的时候,发现输入手机号和密码的时候,上面的小熊是会有不会形态的.于是登录上掘金的第一件事情就是把这个小案例写了下.我是用的最简单的方法来写的.有更加简洁的方法可以在下面评论出来,大家一起进 ...
- 基于 Bootstrp 构建简洁的登录框并实现记住我功能
<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8" ...
- 简单jQuery实现选项框中列表项的选择
这段代码非常的简单,仅仅作为自己的一个小小的记录! ok,先上一个简单的图例,效果如下(注意:这只是一个简单的例子,不过可以根据这个简单的例子,变化出更为复杂的效果)! 代码也非常的简单,如下所示(注 ...
- 简单的网页登录注册页面
在开发前端的时候我们会使用到网页的登陆注册,加入验证码的效果,代码如下: 其运行结果如下:
- 一道简单的CTF登录题题解
一.解题感受 这道题50分,在实验吧练习场算比较高分,而且通过率只有14%,比较低的水平. 看到这两个数据,一开始就心生惬意,实在不应该呀! 也是因为心态原因,在发现test.php之后,自以为在SQ ...
- Vue前端项目-登录组件-登录框界面
目录 1.登录框组件设计 1.1 表单元素组件注册 1.2 登录组件的结构和样式 2.Icon 图标 2.1 拷贝 font 文件夹到 asserts 目录 2.2 引入 font 的 css 样式 ...
- php 清除浏览器记住密码,网页登录中实现记住用户名和密码的功能(完成自动登录)...
网页记住用户名,就是我们经常会用到的,登录下面有一个复选框,可以设置用户7天内或1个月不需要登录,只要你进行本网站系统查询cookie是否有相差用户名与密码如果是就把信息提取再到数据库中查询,如果co ...
- java实现简单扫码登录功能(模仿微信网页版扫码)
java实现简单扫码登录功能 模仿微信pc网页版扫码登录 使用js代码生成qrcode二维码减轻服务器压力 js循环请求服务端,判断是否qrcode被扫 二维码超时失效功能 二维码被扫成功登录,服务端 ...
- 登录功能中发送邮箱验证的简单使用
登录功能中发送邮箱验证的简单使用 java开发中常用的邮箱相关的就是给邮箱发送验证码,发送验证码在java中使用javamail,它提供了一套发送和接收功能的标准,支持协议:smtp,pop3,ima ...
最新文章
- js String方法集合
- 阿里RocketMQ是怎样孵化成Apache顶级项目的?
- java reference 传引用_Java的引用(reference)---Roni
- Qt文档阅读笔记-Image QML官方解析与实例
- VC打包程序,并修改注册表(详细以后补充)
- 使用caffemodel模型(由mnist训练)测试单张手写数字样本
- Android事件分发浅析
- azure 安全组_用户安全和Azure成本风险
- 谈谈数值分析中的插值(截断)误差,以牛顿法为例
- typora 公式_Typora 编辑器的Vue主题类介绍
- 重磅丨继人工智能大会后《AIOS链上人工智能白皮书》正式发布,核心应用即将开启
- RuoYi-Vue前后端分离
- 人人都是架构师?哪有那么容易
- c语言编译bss和data,深入理解BSS段与data段的区别
- 解决uniapp从首页列表进入详情页,再返回首页时滚动条在顶部的问题
- 手把手教你快应用接入微信H5网页支付
- 上传声音 微信小程序_微信小程序之----audio音频播放
- java枚举类型季节实例_Java之枚举类
- How to Pronounce PROBABLY
- 民间第一高手—牵牛队长 韭菜队长
热门文章
- ajax直接调用数据库数据库数据库,AJAX调用mysql数据库简单例子(示例代码)
- web开发视频教程,CSS颜色基本样式
- 自定义view————涂鸦画板
- neo4j构建算法_使用neo4j构建餐厅推荐引擎
- 自学linux驱动从入门到放弃(四)配置rk3288开发板与ubuntu18.04的IP地址
- 毛戈平上市以“光影美学”的理念打造适合中国人的高端化妆品品牌
- 链家网二手房信息爬取(一)
- 平面向量内积坐标公式推导_平面向量的所有公式-平面向量公式
- excel单元格斜线_Excel 表格中斜线怎么制作?
- 计算机变量与变量地址,数据缓冲区与变量的地址(更新1)