Java 日看一类(64)之net包中的CacheRequest类和CacheResponse类

CacheRequest:缓存你的 AJAX 请求 缓存请求 这是什么? 它只是一个用于缓存来自 ajax 的响应的类。 这不允许完全脱机操作。 您应该将其用于其他目的,例如: 快速响应用户一些不需要实时的信息; 在设备离线时提供有效但不是那么新的信息; 在等待真实请求的同时获取有效的缓存信息(很快) 要求 目前,它依赖于 jQuery 来处理请求。 很快就会改进。 对此感到抱歉 =( [更新 3/5/15] 已经可以在没有 jQuery 的情况下使用这个缓存。 但是,不建议这样做。 它还没有经过很好的测试。 如果想在没有 jQuery 的情况下使用它,即使知道这还没有准备好。 很简单,如果 jQuery 不存在,它会自动使用它自己的 XMLHTTPRequest 实现。 安装 凉亭安装缓存请求 如何使用? 只需在您的 html 中包含cacherequest.min.js就可以了! 所以你只需要调用CacheReque 立即下载

CacheRequest类无继承类

引入了如下包

import java.io.OutputStream;
import java.io.IOException;



该类的类头注释如下:

/**
 * Represents channels for storing resources in the
 * ResponseCache. Instances of such a class provide an
 * OutputStream object which is called by protocol handlers to
 * store the resource data into the cache, and also an abort() method
 * which allows a cache store operation to be interrupted and
 * abandoned. If an IOException is encountered while reading the
 * response or writing to the cache, the current cache store operation
 * will be aborted.
 *
 * @author Yingxian Wang
 * @since 1.5
 */

大意如下:

相当于在ResponseCache中存储资源的途径

该类的实例会提供一个输出流对象来存储资源到缓存中

并且提供abort方法允许缓存存储操作被打断和抛弃

如果在读取回复或者写入缓存时遇到了IO异常,当前的缓存存储操作将会中止



该类含有如下的成员方法:

获得可向缓存中写入的输出流

public abstract OutputStream getBody() throws IOException;

中止当前的缓存响应

public abstract void abort();



CacheResponse类无继承类

引入了如下包:

import java.io.InputStream;
import java.util.Map;
import java.util.List;
import java.io.IOException;


该类的类头注释如下:

/**
 * Represent channels for retrieving resources from the
 * ResponseCache. Instances of such a class provide an
 * InputStream that returns the entity body, and also a
 * getHeaders() method which returns the associated response headers.
 *
 * @author Yingxian Wang
 * @since 1.5
 */

大意如下:

相当于从ResponseCache中取回资源的途径

该类的实例会提供一个输入流并且完整返回该输入流

并且也会提供getHeaders方法

该方法会返回相关的响应头


该类含有如下的成员方法:

以map方式返回响应头

public abstract Map<String, List<String>> getHeaders() throws IOException;

返回从缓存输入的输入流

public abstract InputStream getBody() throws IOException;




这两个类都是针对缓存操作的,本身说明中和应用和网络操作关系不大(当然可以用在网络上,只是在任何方面都可以用得上,感觉封到IO里可能好些),不是很懂为什么要封在net包。该类主要是对高速缓存的资源管理。

cacheRequest:请求并对get请求进行缓存 cacheRequest 请求并对get请求进行缓存 usage networkRequest({ url: '/course/courseBanners', method: 'get' }, response => { }, { cacheName: CACHE_NAME.COURSE_BANNER_LIST.NAME, cacheTime: CACHE_NAME.COURSE_BANNER_LIST.TIME, isNow: isNow }); 立即下载

相关推荐

Unity 接入HybridCLR的点点滴滴,亲测三平台(PC、Android、WebGL)妥妥的。-问题分享

一入热更深似海啊,没有热更是真恼火啊,干啥啥不方便,动不动就得重新发包;说实在的,也是工作之余研究这个,在原有框架基础上接入这个热更,既要保持原有功能,还要支持热更,实实在在、断断续续搞了这么久,终于是接入并测通了,这一路是坎坎坷坷,下面把走过的弯弯绕绕记录下,希望对后来想接入的小伙伴有帮助吧。

GarFe的博客 1万+

java网络编程之缓存(三)

java网络编程之缓存(二)介绍了javaWeb缓存的三个接口类。 下边我会给出这三个接口类的memory实现,然后通过注册系统级uc缓存使用我们自己定义的缓存。 MemoryCacheRequest MemoryCacheResponse MemoryResponseCache 这三个类分别实现了CacheRequest,CacheResponse,ResponseCache接口,Me

裴珏的专栏 872

别再折腾Windows了!Ubuntu 22.04下USRP X310 + RFNoC + Vivado 2021.1开发环境保姆级搭建指南

本文提供Ubuntu 22.04下USRP X310 + RFNoC + Vivado 2021.1开发环境的详细搭建指南,涵盖系统优化、UHD驱动编译、Vivado配置及硬件验证等关键步骤,帮助射频工程师高效构建稳定的开发环境,显著提升FPGA开发效率。

weixin_29168675的博客 258

Java中使用ResponseCache类构建本地缓存

Java中使用ResponseCache类构建本地缓存 CacheRequest CacheResponse 只是对GET请求进行缓存 缓存失效策略

u013905744的专栏 2730

GXHT40温湿度传感器:I2C通信与CRC校验实战解析

本文详细解析GXHT40温湿度传感器的I2C通信协议与CRC校验机制,涵盖硬件连接、时序控制、数据读取及加热功能应用。通过实战案例分享优化技巧与异常处理,帮助开发者提升嵌入式系统中传感器数据的准确性与可靠性。

rgv234567的博客 243

FX2N-2AD模块实战:从硬件连接到FROM/TO指令编程详解

本文详细解析FX2N-2AD模拟量输入模块的硬件连接与FROM/TO指令编程技巧,涵盖BFM缓冲存储器配置、梯形图程序设计及工程实战经验。通过实例演示如何实现精准信号采集与数据处理,特别针对PLC系统中的常见故障提供解决方案,助力工业自动化工程师高效完成设备调试与维护。

prometheus9mon的博客 508

使用缓存(Cache)的几种方式,回顾一下~~~

缓存用起来真香

zyq025的专栏 3541

H3C交换机S-MLAG实战:如何用bond4模式实现服务器高可用(附避坑指南)

本文详细介绍了H3C交换机S-MLAG技术与服务器bond4模式的实战配置,帮助实现跨设备链路聚合的服务器高可用方案。通过解析S-MLAG技术优势、bond4模式选择、关键配置步骤及常见问题排查,提供了一套完整的避坑指南和优化建议,适用于企业级网络架构的高可用需求。

weixin_30790841的博客 466

六、 request cache的请求缓存

查找是否开启了request cache,是否有请求缓存,如果有缓存,直接取用缓存,返回结果 6.1 reqeust context请求上下文概念 首先,有一个概念,叫做reqeust context,请求上下文。一般来说,在一个web应用中reqeust context(请求上下文),在一个web应用中,Hystrix会在一个filter里面,对每一个请求都施加一个请求上下文,例如...

mtsbv110的专栏 2918

MATLAB点云处理(八):为点云添加高斯噪声

本文对如何借助MATLAB,为点云添加高斯噪声做出了说明,并给出实现代码。

孙悟空 2844

【QT/C++】事件过滤器之基于重写 eventFilter 方法的多种常见应用场景及实现

Qt事件过滤器通过重写eventFilter方法实现多种实用功能:1)鼠标事件处理(点击全选文本、禁用滚轮、悬停提示);2)键盘事件处理(输入内容限制、快捷键提交);3)焦点事件处理(自动弹出下拉框、实时验证);4)绘图事件处理(自定义控件绘制);5)窗口事件处理(防止意外关闭、尺寸限制)。事件过滤器提供非侵入式的事件处理方案,相比传统子类化方式更灵活,通过installEventFilter安装到目标控件即可实现各种交互增强功能。

yuhuasheng1997的博客 1484

读书笔记 --- > [基础知识点] 小结1

1. TCP,UDP区别 TCP UDP 基于有连接 基于无连接 对系统资源要求较多 对系统资源要求少 程序比较复杂 程序结构比较简单 流模式 数据报模式 保证数据的准确性 不保证数据的准确性 保证数据的顺序 不保证数据的顺序 2. OSI七层模型以及tcp/ip四层模型 OSI七层模型 tcp/ip四层模型 常用的5层模型 物理层 物理层 ...

栗子好好吃的博客 387

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

rest_framework--缓存CacheResponseMixin

drf缓存CacheResponseMixin–内存行缓存 安装包 pip3 install drf-extensions view–在你需要缓存的视图里加上CacheResponseMixin, 记住一定要放在第一位 # drf缓存 from rest_framework_extensions.cache.mixins import CacheResponseMixin class ...

xiao-啸 1176

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

rest_framework---redis缓存存储CacheResponseMixin的缓存数据

drf缓存–redis缓存存储CacheResponseMixin的缓存数据 安装包 pip3 install drf-extensions pip3 install django-redis view–在你需要缓存的视图里加上CacheResponseMixin, 记住一定要放在第一位 # drf缓存 from rest_framework_extensions.cache.mixin...

xiao-啸 956

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

11、DRF实战总结:使用cache_page和第三方库drf-extensions进行缓存(附源码)

对于经常被查询使用而且不怎么变化的数据, 建议对Django REST Framework(DRF)的响应数据进行缓存, 这样可以避免重复数据库查询, 大大加快响应时间。 DRF支持两种数据缓存方式: 1. Django的原生cache_page装饰器; 2. drf-extensions这个第三方库提供的CacheResponseMixin的Mixin类。

SteveRocket's-Blog 787

Java Cache 入门

什么是缓存 术语缓存在计算机中无处不在。在应用程序设计的上下文中,它经常被用来描述应用程序开发人员利用单独的内存或低延迟的数据结构。缓存,用于临时存储或缓存信息的副本或引用,应用程序可能会在稍后的某个时间点重复使用,从而减轻重新访问或重新创建它的成本。 在 JCache 的上下文中,术语缓存描述了 Java 的技术开发人员使用缓存提供程序临时缓存 Java 对象。 JSR107(JCache) J...

github_39602765的博客 1万+

基于 request cache 请求缓存技术优化批量商品数据查询接口

本系列内容转载自git项目advancejava Hystrix command 执行时 8 大步骤第三步,就是检查 Request cache 是否有缓存。 首先,有一个概念,叫做 Request Context 请求上下文,一般来说,在一个 web 应用中,如果我们用到了 Hystrix,我们会在一个 filter 里面,对每一个请求都施加一个请求上下文。就是说,每一次请求,就是一次请求上下文...

littleAusna的博客 1127

如何使用java的ResponseCache建立本地缓冲

Using ResponseCache in an Android App I’m currently working on an Android app and I’ve decided to use the java.net package for making H

1001

SpringCloudGateway获取body中的参数,最优雅的方式

项目需要在Gateway中获取请求参数,原生提供了request.getQueryParams()方法获取请求参数,但是只能获得url上的param,对于form body中的参数获取不到。找了很多方法,网上普遍都是通过自定义Filter缓存Body中的内容,然后再获取缓存的Body,此处的缓存实现方法各异,有些还存在内存泄漏问题。本文使用官方自带的缓存过滤器实现,然后整合url参数和body参数到同一对象进行查询。

Print_lin的博客 5353

【SpringCloudAlibaba专题】Springcloud gateway之获取requestBody踩坑(G版本)

文章目录踩坑示范爬坑案例CacheRequestBodyFilterLoggerFilter #前言 之前写springcloud gateway收集日志,由于之前没有调研全面,导致了一个小坑,无法记录post方法获取requestBody。 踩坑示范 ServerHttpResponseDecorator decoratedResponse = new ServerHttpResponseDe...

batman 1929

Gateway 获取 RequestBody

Gateway 获取 RequestBody Gateway版本: org.springframework.cloud:spring-cloud-starter-gateway:3.1.1 直接上代码: import com.alibaba.fastjson.JSON; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springf

找啊找啊找bug的博客 1549

Okhttp的GET与POST使用、MIME、常见问题及拦截器

它处理了很多网络疑难杂症,比如会从很多 常用的连接问题中自动恢复。如果你的服务器配置了多个 IP 地址,当第一个 IP连接失败的时候,OkHttp会 自动尝试下一个IP。从Android 4.4版本开始,系统内置了OkHttp,可见OkHttp功能的强大 MIME: MediaType指的是要传递的数据的MIME类型,MediaType对象包含了三种信息:type 、subtype以及char...

手写我对你的温柔 4529

教你如何使用okhttp缓存

okhttp缓存使用,基于okhttp3.5.0

楠之枫雪的博客 2万+

OkHttp总结 (二) --分发器(Dispatcher)

在OkHttp总结(一)–简单使用 中,我们简单介绍了OkHttp以及它的简单应用,从本篇文章开始,我们将从OkHttp的分发器入手逐步地分析OkHttp的源码结构。

狂奔小子的博客 1099

SpringCloud-Gateway自定义过滤器,解决body流不能重复读的问题

网上的代码千奇百怪,这个是我测试后整理的。当前端请求不含body时,也能兼容。

YuChen 3256
上一篇: Java 日看一类(63)之net包中的BindException和ConnectException异常类
下一篇: Java 日看一类(65)之net包中的ContentHandlerFactory接口与ContentHandler类
wyf95278
博客等级 码龄10年 38粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值