本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用

内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系。

本人互联网技术爱好者,互联网技术发烧友

微博:伊直都在0221

QQ:951226918

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1. 自动登录 的需求

  ① 不需要填写用户名和密码等信息,可以自动登录到系统

  ②  login.jsp  hello.jsp

  

login.jsp

 <%@ 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>Insert title here</title>
</head>
<body> <form action="index.jsp">
name:<input type="text" name="name"/>
<input type="submit" value="submit"/> </form> </body>
</html>

hello.jsp

 <%@ 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>自动登陆测试</title>
</head>
<body> <%
//1.若可以获取到请求参数 name, 则打印出欢迎信息。把登录信息存储到 Cookie 中,并设置 Cookie 的最大时效为 30S
String name = request.getParameter("name");
if(name != null && !name.trim().equals("")){ //创建并且发送cookie
Cookie cookie = new Cookie("loginName",name);
cookie.setMaxAge(30);
response.addCookie(cookie);
}else{
//2.从 Cookie 中读取用户信息,若存在则打印欢迎信息
Cookie[] cookies = request.getCookies();
if(cookies != null && cookies.length > 0){
for(Cookie cookie : cookies){
String cookieName = cookie.getName();
if("loginName".equals(cookieName)){
String value = cookie.getValue();
name = value; }
}
} }
if(name != null && !name.trim().equals("")){
out.print("欢迎登陆" + name);
}else{
//3.若既没有请求参数,也没有 Cookie,则重定向到 login.jsp
request.getRequestDispatcher("/app-1/login.jsp");
} %>
</body>
</html>

最新文章

  1. 使用easyui-layout布局
  2. leetcode 402. Remove K Digits
  3. CentOS系统识别NTFS分区的移动硬盘
  4. *args和**kw魔法参数
  5. 第三百五十二天 how can I 坚持
  6. I.MX6 Android Linux shell MMPF0100 i2c 设置数据
  7. 【转】 如何利用Cocos2d-x开发一个游戏
  8. 【转】在linux内核中读写文件 -- 不错
  9. jquery 中时间的运用
  10. 1.Tarball软件make与makefile详解(还需要补充)
  11. python模拟登录浙江大学彩云库
  12. New UWP Community Toolkit - RangeSelector
  13. Java instanceof 关键字是如何实现的?
  14. [转]Linux操作系统tcpdump抓包分析详解
  15. C#-继承(十一)
  16. 测试驱动android
  17. mysql压缩版的安装教程
  18. OpenSSH服务及其相关应用
  19. 连接池中的maxIdle,MaxActive,maxWait等参数详解
  20. 身份证真实性校验js、mini ui身份证长度正则验证

热门文章

  1. Android开发环境搭建 for windows (linux类似) 详细可参考“文件”中“Android开发环境搭建.pdf ”
  2. Jenkins Docker 插件
  3. PHP面试题及答案解析(4)—PHP核心技术
  4. 解决PHP显示Warning和Notice等问题
  5. Atitit.&#160;如何判断软件工程师&#160;能力模型&#160;程序员能力模型&#160;&#160;项目经理能力模型
  6. Eureka 源码编译安装部署---Eureka运行eureka-server服务
  7. linux sublime python
  8. CyclicBarrier的工作原理及其实例
  9. bootstrat 设置 select option 选项的值
  10. php党 强烈推荐TIPI:深入理解PHP内核