Web---Cookie技术(显示用户上次登录的时间、显示用户最近浏览的若干个图片(按比例缩放))(1)

简介: Web---Cookie技术(显示用户上次登录的时间、显示用户最近浏览的若干个图片(按比例缩放))

本章博客讲解:

1、Cookie基本用法演示

2、演示Cookie的访问权限

3、演示Cookie的删除

4、利用Cookie显示用户上次登录的时间

5、利用Cookie技术显示用户最近浏览的若干个图片

6、测试火狐浏览器到底支持多少个Cookie和一个Cookie最大为多大


1、Cookie基本用法演示


index.jsp:


<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  </head>
  <body>
    <h1>演示Cookie技术</h1>
    <a href="CookieDemo">Cookie基本用法演示</a><br/>
  </body>
</html>


web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
  <display-name></display-name>
  <servlet>
    <servlet-name>CookieDemo</servlet-name>
    <servlet-class>cn.hncu.servlets.CookieDemo</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>CookieDemo</servlet-name>
    <url-pattern>/CookieDemo</url-pattern>
  </servlet-mapping>    
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>


CookieDemo.java:

package cn.hncu.servlets;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.util.Random;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class CookieDemo extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=utf-8");
        PrintWriter out = response.getWriter();
        //向客户端写cookie
        Random r = new Random();
        int n =r.nextInt(100);
        String name = "jack";//cookie的格式:key=value
        Cookie c = new Cookie("name", name+n);
        c.setMaxAge(60*60);//设置过期时间,以秒为单位
        c.setPath( request.getContextPath() );//该路径是:  /项目名
        //Cookie机制中,是通过path来控制权限的。只有<url-pattern>和该path相同或是它的子路径的servlet才能够访问该cookie
        //如果把一个cookie的path设为项目根目录,那么该项目下的所有servlet都能够访问它
        response.addCookie(c);
        //这一段演示cookie带中文
        String str = "我带中文";
        str  = URLEncoder.encode(str, "utf-8");//中文设置编码!!!urlencode编码
        Cookie cStr = new Cookie("str", str);
        //如果不设置setMaxAge,则浏览器一关闭就过期
        cStr.setPath("/");
        response.addCookie(cStr);
        //读取客户端发过来的cookie
        Cookie cs[] = request.getCookies();//读取cookie
        if(cs!=null){//防范一下
            for(Cookie cc:cs){
                String name2 = cc.getName();
                String val = cc.getValue();
                val = URLDecoder.decode(val, "utf-8");//原来是怎么编码的,就怎么解码! 中文解码,ascii是原样的!
                out.print(name2+"="+val+"<br/>");
            }
        }
        out.print("Cook保存成功!");
    }
}


演示结果:

image.png

第一次点击时!session下次讲!tomcat自动生成发给客户端的!

image.png

再次进入时!

name+n–因为后面的n一直在随机生成,这个点击总是显示的是前一个的信息!

image.png

image.png



目录
相关文章
|
5月前
|
安全 Java API
Java Web 在线商城项目最新技术实操指南帮助开发者高效完成商城项目开发
本项目基于Spring Boot 3.2与Vue 3构建现代化在线商城,涵盖技术选型、核心功能实现、安全控制与容器化部署,助开发者掌握最新Java Web全栈开发实践。
603 1
|
7月前
|
Web App开发 数据安全/隐私保护 Python
万能ck提取登录软件,京东贴吧淘宝拼多多cookie提取工具,python框架分享
这个框架使用了Selenium进行浏览器自动化操作,包含了京东和淘宝的登录示例。代码展示了如
|
10月前
|
数据采集 存储 Web App开发
如何避免爬虫因Cookie过期导致登录失效
如何避免爬虫因Cookie过期导致登录失效
|
7月前
|
存储 数据库 数据安全/隐私保护
抖音ck提取工具,快手小红书微博哔哩哔哩cookie提取登录软件,python框架
这个框架提供了完整的Cookie提取功能,支持抖音、快手、小红书、微博和哔哩哔哩平台。主要特点包括
|
8月前
|
API 开发工具 开发者
微博哔哩哔哩百度贴吧ck提取登录工具,cookie提取器登录软件,易语言版
易语言中基本的HTTP请求功能。实际开发中,建议使用各平台官方提供的SDK和API,遵守开发者协议
|
8月前
|
缓存 前端开发 应用服务中间件
Web端实时通信技术SSE在携程机票业务中的实践应用
本文介绍了携程机票前端基于Server-Sent Events(SSE)实现服务端推送的企业级全链路通用技术解决方案。文章深入探讨了 SSE 技术在应用过程中包括方案对比、技术选型、链路层优化以及实际效果等多维度的技术细节,为类似使用场景提供普适性参考和借鉴。该方案设计目标是实现通用性,适用于各种网络架构和业务场景。
270 1
|
9月前
|
缓存 前端开发 应用服务中间件
Web端实时通信技术SSE在携程机票业务中的实践应用
本文介绍了携程机票前端基于Server-Sent Events(SSE)实现服务端推送的企业级全链路通用技术解决方案。文章深入探讨了 SSE 技术在应用过程中包括方案对比、技术选型、链路层优化以及实际效果等多维度的技术细节,为类似使用场景提供普适性参考和借鉴。
362 7
|
数据采集 Web App开发 API
FastAPI与Selenium:打造高效的Web数据抓取服务 —— 采集Pixabay中的图片及相关信息
本文介绍了如何使用FastAPI和Selenium搭建RESTful接口,访问免版权图片网站Pixabay并采集图片及其描述信息。通过配置代理IP、User-Agent和Cookie,提高爬虫的稳定性和防封禁能力。环境依赖包括FastAPI、Uvicorn和Selenium等库。代码示例展示了完整的实现过程,涵盖代理设置、浏览器模拟及数据提取,并提供了详细的中文注释。适用于需要高效、稳定的Web数据抓取服务的开发者。
748 15
FastAPI与Selenium:打造高效的Web数据抓取服务 —— 采集Pixabay中的图片及相关信息
|
人工智能 安全 物联网
区块链技术的未来展望:去中心化金融(DeFi)与Web 3.0的融合
区块链技术的未来展望:去中心化金融(DeFi)与Web 3.0的融合
|
前端开发 JavaScript 搜索推荐
HTML与CSS在Web组件化中的核心作用及前端技术趋势
本文探讨了HTML与CSS在Web组件化中的核心作用及前端技术趋势。从结构定义、语义化到样式封装与布局控制,两者不仅提升了代码复用率和可维护性,还通过响应式设计、动态样式等技术增强了用户体验。面对兼容性、代码复杂度等挑战,文章提出了相应的解决策略,强调了持续创新的重要性,旨在构建高效、灵活的Web应用。
350 6