快速业务通道

使用缓存构建更快的Web应用程序 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-16
串值作为参数,但是您可以使用任何对象。

检索缓存对象只不过是使用 JCS 提供的 get 方法。清单 5 显示了一个简单 示例。同样,本例使用了一个字符串参数,但您可以使用任何对象。

清单 5. 检索缓存项

// Retrieve a cached object String cachedData = (String)cache.get(key);

测试缓存数据的有效性可能是处理缓存系统时需要使用的另一种方法。在 JCS 中,没有定义只测试缓存项是否存在的测试缓存方法。但是 get 方法的返回值可 以帮助您。清单 6 显示了一种获得此必要功能的方式:

清单 6. 测试缓存项的有效性

// Retrieve a cached object String cachedData = (String)cache.get(key); // Check if the retrieval worked if (cachedData != null) {   // The cachedData is valid and can be used   System.out.println("Valid cached Data: " + cachedData); }

最后需要几个用于在使用 JCS、缓存项和缓存区域后清除它们的常用缓存实用 程序。JCS 提供了一种 clear 方法,用于从调用的缓存区域中删除所有缓存数据 。此外,还提供了一个 remove 方法,用于删除指定缓存项。dispose 方法也可 以处理初始化的 JCS 区域。清单 7 显示了如何使用这些方法:

清单 7. 清除缓存区域

// Dispose of a specific cached item cache.remove(key); // Dispose of all cache data cache.clear(); // Dispose of the cache region cache.dispose();

使用缓存构建更快的Web应用程序(4)

时间:2011-07-08 IBM Kellen F. Bombardier

JCS 和 Java 对象

JCS 优于其他缓存系统(请参阅 参考资料)的一个地方是它可以很好地使用 对象。大多数 Web 应用程序是使用面向对象的方法通过 Java 技术创建的。例如 ,与连续从数据库中逐段检索对象相比,缓存对象使应用程序能够更好地执行。

设计一个简单的面向对象的 JCS 站点的第一个步骤是创建需要存储的对象。 在本例中,我将开发一个基本 blogging 站点。清单 8 显示了我将使用的 BlogObject 类:

清单 8. BlogObject 类

package com.ibm.developerWorks.objects; import java.io.Serializable; import java.util.Date; public class BlogObject implements Serializable {   private static final long serialVersionUID = 6392376146163510046L;   private int blogId;   private String author;   private Date date;   private String title;   private String content;   public BlogObject(int blogId, String author, Date date, String title, String content) {    this.blogId = blogId;    this.author = author;    this.date = date;    this.title = title;    this.content = content;   }   public int getBlogId() {    return this.blogId;   }   public String getAuthor() {    return this.author;   }   public Date getDate() {    return this.date;   }   public String getTitle() {    return this.title;   }   public String getContent() {    return this.content;   } }

在一个类中表示对象后,接着还需要一个类来管理该对象。管理器处理所有与 blog 对象相关的管理和缓存功能。在本例中,管理器将处理三大任务:

检索 blog 对象

在缓存中设置 blog 对象

从缓存中清除 blog 对象

如清单 9 所示,getBlog 方法检索 blog 对象。该方法首先试图从缓存获得 blog 对象。如果该对象不在缓存中,它将根据其他机制获取该对象:

清单 9. 通过 blog 管理器检索 blog 对象

public BlogObject getBlog(int id) {   BlogObject blog = null;   try {    blogCache = JCS.getInstance(blogCacheRegion);   

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号