session保存登录状态与cookie保存账号密码

  • 1. session维持登录状态
    • 1.1 代码实现
  • 2. cookie保存账号密码
    • 2.1 什么是cookie
    • 2.2 cookie记住账号密码

1. session维持登录状态

  • 利用session的生命周期实现

1.1 代码实现

  • login页面表单部分
    <form action="judgeLoginSession" method="post">name:      <input type="text" name="name" />    <br/>password:<input type="password" name="pwd" /> <br/><input type="submit" value="提交"/></form>
  • index页面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><base href="<%=basePath%>"><title>My JSP 'index.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0">    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><script type="text/javascript">window.onload = function() {if (${empty name}) {alert("请登录!");location.href = "login.jsp";}};</script></head><body>    欢迎${ name },登录成功!</body>
</html>
  • 后台为了简单就不搞数据库了
 protected void service(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {String name = req.getParameter("name");String pwd = req.getParameter("pwd");if ("rye".equals(name) && "123".equals(pwd)) {// 登录成功 session 保存姓名req.getSession().setAttribute("name", name);resp.sendRedirect("index.jsp");} else // 账号密码错误重新登录。resp.sendRedirect("login.jsp");}
  • 访问首页,js判断没有登录
  • 测试
  • 登录成功,跳转首页

  • 关闭首页,重新访问,能取到名字,session存在。

2. cookie保存账号密码

2.1 什么是cookie

cookie的基本使用

2.2 cookie记住账号密码

  • 登录页面
    <form action="testCookie" method="post">name:     <input type="text" name="name" value="${ cookie.name.value }"/>    <br/>password:<input type="password" name="pwd" value="${ cookie.pwd.value }"/> <br/>记住密码: <input type="checkbox" name="remPwd" value="1"/><input type="submit" value="提交"/></form>
  • 后台取到写cookie到客户端
 protected void service(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {String name = req.getParameter("name");String pwd = req.getParameter("pwd");// 标记是否记住密码String remPwd = req.getParameter("remPwd");// 登录成功 if ("rye".equals(name) && "123".equals(pwd)) {if (remPwd != null) { // 记住密码// cookie 保存姓名, 密码Cookie cookie1 = new Cookie("name", name);Cookie cookie2 = new Cookie("pwd", pwd);// cookie存在浏览器一个小时, 保存浏览器的文件下cookie1.setMaxAge(60*60);// 保存cookie到浏览器resp.addCookie(cookie1);resp.addCookie(cookie2);}resp.sendRedirect("MyJsp.jsp");} else // 账号密码错误重新登录。resp.sendRedirect("login.jsp");}
  • 测试
  • 登录成功,跳转

  • 菜鸟f12,cookie如下,服务器的响应如下

我是bitQian,如果你觉得我写得还阔以,点赞,评论,分享三连击。

使用session保持登录状态,cookie保存用户账号密码相关推荐

  1. python爬虫使用session保持登录状态

    今天有个客户需求,从网站上下载会员试题,需要在登录状态下载,然后将网页中展示的试题保存在word中. 网站上展示的所有试题要保存在一个word文档中,但是每一个试题结束下一个试题开始都是分开页码,一道 ...

  2. python爬虫——利用 session 处理登录状态 github 登录实例

    更多精彩内容 Cookie Cookies是服务器在本地机器上存储的小段文本并随每一个请求发送至同一个服务器 Session session机制是一种服务器端的机制,服务器使用一种类似于散列表的结构( ...

  3. 安卓-多进程WebView登录状态没有保存问题

    遇到一个很恶心人的问题,我主进程有一个WebView(假设A),左滑又可以独立开启一个进程WebView界面(假设B),两个进程WebView都有各自登录的要求.当我给A与B登录后,把App杀死后,发 ...

  4. 登录时本地保存账号密码及关闭ARC的方法

    对于登录时保存用户名和密码,苹果官方使用的是KeychainItemWrapper,但使用时有些不便,如在引入KeychainItemWrapper的类中都要关闭arc,不能自定义key,必须使用该类 ...

  5. Cookie保存登录状态

    Cookie保存登录状态 题目描述:在用户登录界面中,输人账号和密码,让用户选择"是否保存登录状态",如果账号密码相等,则登录成功,进人欢迎页面.在登录时,如果保存了登录状态,下次 ...

  6. android记录登录状态

    android 开发过程中,我们经常有需要记住登陆的状态的情况.下面是我实现这一功能的一些思路 首先假设,咱们已经实现了登录. 要实现记住登录,我们当然需要将一些数据保存到什么地方.android为我 ...

  7. HTML用cookie实现自动登录,用cookie实现websocket自动登录,session状态保留。

    原标题:用cookie实现websocket自动登录,session状态保留. 会话状态的保留,即登录状态保持,是很常见.很常用的功能. 本文将介绍,在NodeJS开发中,如何实现websocket连 ...

  8. 登录状态保持Session/Cookie

    登录成功: 1.Session保存User对象. 2.Cookie保存唯一值UserID(或者usercode)和加密Sign(生成规则自己定义,MD5用户名,用户ID,私有串等),并设置过期时间. ...

  9. Asp.Net使用加密cookie代替session验证用户登录状态 源码分享 欢迎拍砖

    小论坛地址: http://rayyu.5d6d.com/thread-9444-1-1.html 正文: 首先 session 和 cache 拥有各自的优势而存在.  他们的优劣就不在这里讨论了. ...

最新文章

  1. Spring Boot(四):利用devtools实现热部署,改动代码自动生效
  2. 扇区、磁盘块、页、页框、缓冲区之间的关系!
  3. 从输入url到显示网页,后台发生了什么?
  4. 修改Docker0网桥默认网段
  5. EDAS提交论文字体未嵌入
  6. python基础语法whike循环_python基础语法 - 循环
  7. 【POJ】2065 SETI
  8. linux5中文支持,centos安装中文支持
  9. IDEA使用(03)_git撤回(已经commit未push的)操作
  10. c语言easyx输出文字_做游戏,学编程(C语言) 6 数组之空战游戏
  11. 看我72变:解决Entity Framework中枚举类型与tinyint的映射问题
  12. 当金蝶BOS开发网版主啦,纪念下!^_^
  13. php 聊天室设计,基于PHP+MySQL的聊天室设计_PHP教程
  14. Telink BDT 的使用方法
  15. python 流程结构练习
  16. 【金融系列】使用Python分析债券,画零息利率曲线,对债券进行精确定价,计算债券的麦考利久期、修正久期和凸度,并进行价格敏感性分析
  17. 乒乓球十一分制比赛规则_乒乓球比赛规则
  18. 托福高频真词List16 // 附托福TPO阅读真题
  19. EXCEL应用:思迈特软件Smartbi数据可视化终极教程
  20. 诸神之眼-nmap详细使用介绍2!端口扫描技术和操作系统与服务检测篇! (*╹▽╹*) 信息收集 ~ 其三

热门文章

  1. 23.JSP 隐式对象
  2. 玩转oracle 11g(35):rman备份-参数文件spfile损坏恢复
  3. php json传输被过滤,php-the_content过滤器,用于将自定义字段添加到JSON响应
  4. 传送,条件加速 Learn Unreal Engine (with C++)
  5. Nginx的应用之安装配置
  6. Unittest方法 -- 测试固件(TestFixture)
  7. 致我的2018 你好2019
  8. Python的特殊成员
  9. angular的uiRouter服务学习(5) --- $state.includes()方法
  10. JAVA求集合中的组合