[英]Caching Resources Loaded by Java Applet
如何控制applet缓存的内容和不缓存的内容? 此外,对于缓存如何在applet中工作的任何见解都将受到赞赏。
我在applet中提出了一个简单的请求,以尝试测试运行时加载的资源是否缓存在任何地方。
这是发出请求的代码。 我在同一小程序生命周期内连续多次调用此命令:
URL url = new URL("http", "localhost", 8343, "/spring-social-test/testSession.html");
URLConnection connection = url.openConnection();
connection.setDefaultUseCaches(true);
connection.connect();
但是,这是Java applet插件控制台中输出的内容:
network: Cache entry not found [url: http://localhost:8343/spring-social-test/index.html, version: null]
network: Connecting http://localhost:8343/spring-social-test/index.html with proxy=DIRECT
更新资料
明确一点-我需要知道在什么情况下会缓存事物(图像),因为我正在开发基于浏览器的游戏原型,而我的主要成本是带宽。 我需要确切知道我将使用多少带宽来探索业务模型。
传统上,小程序资源被急切地缓存(在发生任何其他事情之前)。 唯一的解决方法是将一些Jar排除在archive
属性之外,并(在受信任的applet中)建立URLClassLoader
来根据需要加载其他资源。
但是事情变了。 使用Java Web Start部署applet,您可以完全基于Jar来完全控制下载行为。
Java Web Start(JWS)是Oracle Corporation的技术,用于直接从网络或Internet链接启动富客户端(Swing,AWT,SWT)桌面应用程序。 它为支持Java的平台提供“一键式”安装。
JWS提供了许多吸引人的功能,包括但不限于初始屏幕,桌面集成,文件关联,自动更新(包括延迟下载和更新的程序控制),按平台,体系结构或Java版本,配置对本机和其他资源下载进行分区运行时环境(最低J2SE版本,运行时选项,RAM等),使用扩展轻松管理公共资源。
..
JWS在Java 1.2发行两年后的2001年3月14日首次单独提供下载,可以将应用程序和小程序作为自由浮动实体启动。 该功能与J2SE 1.4.2一起捆绑在一起。 从1.6.0_10(下一代Java插件)开始,JWS也可以用于配置仍嵌入在网页中的小程序。
请参见JWS在此小型Animated GIF制作程序中部署的小程序示例。 该小程序是使用JWS部署的,以便使用其附带的JNLP API服务,该服务允许沙盒小程序访问本地文件系统。
做一件事去ControlPanel>程序> JAVA>常规>设置> DeleteFiles
删除缓存的应用程序和小程序。 这对我有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.