JavaWeb.服务器与客户端存储

本文详细介绍了JavaWeb中的session和cookie,包括它们的基本概念、作用、常用方法和区别。通过示例展示了如何使用cookie实现七天免登录功能,并利用session管理历史记录。此外,还讨论了session的清空与鉴权操作,提供了一个简单的退出登录的实现思路。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一.session与cookie基本概念

什么是session?

session对象常用方法

什么是Cookie?

Cookie的作用

设置Cookie属性的常用方法

如何查看cookie

二.session与cookie的区别

三.cookie实现七天免登录

登陆界面代码:

处理登陆的代码:

四.session完成历史记录

历史记录页面代码:

阅读界面的代码也需要修改

五.session的清空与鉴权


一.session与cookie基本概念

什么是session?

session对象用来存储有关用户会话的所有信息。

会话:一个会话就是浏览器与服务器之间的一次通话,包含浏览器与服务器之间的多次请求、响应过程。

session对象常用方法

类型 方法名称 说  明
void setAttribute(String key,Object value) 以key/value的形式保存对象值
Object getAttribute(String key) 通过key获取对象值 
int getMaxInactiveInterval() 获取session的有效非活动时间,以秒为单位
String getId() 获取session对象的编号
void invalidate() 设置session对象失效

什么是Cookie?

Cookie是Web服务器保存在客户端的一系列文本信息

Cookie的作用

a.对特定对象的追踪 b.统计网页浏览次数 c.简化登录

设置Cookie属性的常用方法

类型 方法名称 说  明
void setMaxAge(int expiry) 设置Cookie的有效期,以秒为单位
void setValue(String value) 在Cookie创建后,对Cookie进行赋值
String getName() 获取Cookie的名称
String getValue() 获取Cookie的值
String getMaxAge() 获取Cookie的有效时间,以秒为单位

如何查看cookie

首先运行的页面鼠标右键点击检查,打开控制台,点击应用程序

 

 点击Cookie里的页面链接,就会出现右边的数据

二.session与cookie的区别

1.session是在服务器端保存用户信息,Cookie是在客户端保存用户信息

2.session中保存的是对象,Cookie保存的是字符串

3.session随会话结束而关闭,Cookie可以长期保存在客户端

4.Cookie通常用于保存不重要的用户信息,重要的信息使用session保存

三.cookie实现七天免登录

 用cookie实现免登陆是不安全的,因为查看cookie可以看到密码,但是也可以加密,但我这里没写。

登陆界面代码:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <meta content="width=device-width, initial-scale=1" name="viewport">
    <link href="${pageContext.request.contextPath}/bootstrap-3.3.7-dist/css/bootstrap.css" rel="stylesheet">
    <script src="${pageContext.request.contextPath}/bootstrap-3.3.7-dist/js/jquery-3.5.1.js"></script>
    <script src="${pageContext.request.contextPath}/bootstrap-3.3.7-dist/js/bootstrap.js"></script>
    <style>
        * {
            outline: none !important;
        }

        html,
        body {
            background: #1abe9c;
        }

        form {
            width: 300px;
            background: #ebeff2;
            box-shadow: 0 0 50px rgba(0, 0, 0, .5);
            border-radius: 5px;
            padding: 20px;
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
        }

        .btn-group {
            width: 100%;
        }

       
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值