所有类
java.net
类 ResponseCache
java.lang.Object
java.net.ResponseCache
-
public abstract class ResponseCache
- extends Object
表示 URLConnection 缓存的实现。这种类的实例可以通过执行 ResponseCache.setDefault(ResponseCache) 向系统注册,系统将调用此对象以便:
- 将从外部源获得的资源数据存储到缓存中
- 试图获取可能存储在缓存中的请求资源
ResponseCache 实现决定应该缓存的资源和缓存它们的时间。如果无法从缓存获得请求资源,则协议处理程序将从其初始位置获取该资料。 URLConnection#useCaches 的设置控制着是否允许协议使用缓存的响应。 有关 HTTP 缓存的更多信息,请参见
RFC 2616: Hypertext Transfer Protocol -- HTTP/1.1。
-
从以下版本开始:
-
1.5
从类 java.lang.Object 继承的方法 |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ResponseCache
public ResponseCache()
getDefault
public static ResponseCache getDefault()
-
获取系统级响应缓存。
-
-
返回:
-
系统级
ResponseCache
-
抛出:
-
SecurityException
- 如果安装了安全管理器并且它拒绝 NetPermission
("getResponseCache")
-
从以下版本开始:
-
1.5
-
另请参见:
-
setDefault(ResponseCache)
setDefault
public static void setDefault(ResponseCache responseCache)
-
设置(或取消设置)系统级缓存。 注:非标准协议处理程序可能忽略此设置。
-
-
参数:
-
responseCache
- 响应缓存,或者为 null
,表示取消设置缓存。
-
抛出:
-
SecurityException
- 如果安装了安全管理器并且它拒绝 NetPermission
("setResponseCache")
-
从以下版本开始:
-
1.5
-
另请参见:
-
getDefault()
get
public abstract CacheResponse get(URI uri,
String rqstMethod,
Map<String,List<String>> rqstHeaders)
throws IOException
-
根据请求的 uri、请求方法和请求头检索缓存的响应。通常,此方法由协议处理程序在发出获取网络资源的请求之前调用。如果返回缓存的响应,则改为使用该资源。
-
-
参数:
-
uri
- 用于引用所请求的网络资源的 URI
-
rqstMethod
- 表示请求方法的 String
-
rqstHeaders
- 从请求头字段名称到表示当前请求头的字段值列表的映射
-
返回:
-
CacheResponse
实例,如果可从缓存中得到;否则返回 null
-
抛出:
-
IOException
- 如果发生 I/O 错误
-
IllegalArgumentException
- 如果参数中的任何一个为 null
-
另请参见:
-
URLConnection.setUseCaches(boolean)
, URLConnection.getUseCaches()
, URLConnection.setDefaultUseCaches(boolean)
, URLConnection.getDefaultUseCaches()
put
public abstract CacheRequest put(URI uri,
URLConnection conn)
throws IOException
-
协议处理程序在获得资源后调用此方法,ResponseCache 必须决定是否在其缓存中存储资源。如果缓存资源,则 put() 必须返回 CacheRequest 对象,该对象包含协议处理程序用来将资源写入缓存的 WriteableByteChannel。如果不缓存资源,则 put 必须返回 null。
-
-
参数:
-
uri
- 用于引用所请求的网络资源的 URI
-
conn
- 用于获取要缓存的响应的 URLConnection 实例
-
返回:
-
用于记录要缓存的响应的
CacheRequest
。返回 null 指示调用方不打算缓存响应。
-
抛出:
-
IOException
- 如果发生 I/O 错误
-
IllegalArgumentException
- 如果参数中的任何一个为 null
所有类