- 浏览: 753248 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
lgh1992314:
a offset: 26b offset: 24c offse ...
java jvm字节占用空间分析 -
ls0609:
语音实现在线听书http://blog.csdn.net/ls ...
Android 语音输入API使用 -
wangli61289:
http://viralpatel-net-tutorials ...
Android 语音输入API使用 -
zxjlwt:
学习了素人派http://surenpi.com
velocity宏加载顺序 -
tt5753:
谢啦........
Lucene的IndexWriter初始化时的LockObtainFailedException的解决方法
要使用java caching system,需要下面这几个包:jcs.jar,concurrent.jar,commons-logging.jar, commons-lang.jar,commons-collection.jar这几个包,在java工程里面,
首先新建一个使用jcs的配置文件:cache.ccf,文件名不能改。
# DEFAULT CACHE REGION # sets the default aux value for any non configured caches jcs.default= jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes jcs.default.cacheattributes.MaxObjects=2000 jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache jcs.default.elementattributes.IsEternal=false jcs.default.elementattributes.MaxLifeSeconds=3600 jcs.default.elementattributes.IdleTime=1800 jcs.default.elementattributes.IsSpool=true jcs.default.elementattributes.IsRemote=true jcs.default.elementattributes.IsLateral=true # CACHE REGIONS AVAILABLE # Regions preconfigured for caching jcs.region.bookCache= jcs.region.bookCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes jcs.region.bookCache.cacheattributes.MaxObjects=1200 jcs.region.bookCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache jcs.region.bookCache.elementattributes.IsEternal=false jcs.region.bookCache.elementattributes.MaxLifeSeconds=7200 jcs.region.bookCache.elementattributes.IdleTime=1800 jcs.region.bookCache.elementattributes.IsSpool=true jcs.region.bookCache.elementattributes.IsRemote=true jcs.region.bookCache.elementattributes.IsLateral=true # AUXILIARY CACHES AVAILABLE # Primary Disk Cache -- faster than the rest because of memory key storage jcs.auxiliary.DC=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory jcs.auxiliary.DC.attributes=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes jcs.auxiliary.DC.attributes.DiskPath=/usr/opt/bookstore/raf jcs.auxiliary.DC.attributes.MaxPurgatorySize=10000 jcs.auxiliary.DC.attributes.MaxKeySize=10000 jcs.auxiliary.DC.attributes.OptimizeAtRemoveCount=300000 jcs.auxiliary.DC.attributes.MaxRecycleBinSize=7500
然后新建两个类,
import java.io.Serializable; import java.util.List; public class Student implements Serializable{ /** * */ public static final long serialVersionUID = 1L; public int sno; public String sname; public Student() {} public int getSno(){ return this.sno; } public void setSno(int no){ this.sno=no; } public String getSname(){ return this.sname; } public void setSname(String name){ this.sname=name; } }
import org.apache.jcs.JCS; public class StuObjManager { private static StuObjManager instance; private static int checkedOut=0; public static JCS stuCache; private StuObjManager() { try { stuCache=JCS.getInstance("stuCache"); } catch(Exception e) { e.printStackTrace(); } } public static StuObjManager getInstance() { synchronized(StuObjManager.class) { if(instance==null) { instance=new StuObjManager(); } } synchronized(instance) { instance.checkedOut++; } return instance; } public Student getStu(int sno) { return getStu(sno,true); } public Student getStu(int sno,boolean a) { Student stu=null; if(a) { stu=(Student)stuCache.get("Stu"+sno); } if(stu==null) { stu=loadStu(sno); } return stu; } public Student loadStu(int sno) { Student stu=new Student(); stu.sno=sno; try { boolean found=false; found=true; if(found) { stuCache.put("Stu"+sno, stu); } } catch(Exception e) {System.out.println("又报错了!");} return stu; } public void storeStu(Student stu) { try { if(stu.sno!=0) { stuCache.remove("Stu"+stu.sno); } stuCache.put("Stu"+stu.sno, stu); } catch(Exception e) {} } public static void main(String [] args) { long last=System.currentTimeMillis(); StuObjManager stu=StuObjManager.getInstance(); for(int i = 0; i < 2000; i++){ stu.loadStu(i); } Student stu1=stu.getStu(8,true); System.out.println(stu1.sno); System.out.println("所需时间:"+(System.currentTimeMillis()-last)); } }
运行类StuObjManager里面的main函数,结果如下:
8
所需时间:1250
发表评论
-
对字符串进行验证之前先进行规范化
2013-09-17 23:18 13947对字符串进行验证之前先进行规范化 应用系统中经常对字 ... -
使用telnet连接到基于spring的应用上执行容器中的bean的任意方法
2013-08-08 09:17 1471使用telnet连接到基于spring的应用上执行容器中 ... -
jdk7和8的一些新特性介绍
2013-07-06 16:07 10110更多ppt内容请查看:htt ... -
java对于接口和抽象类的代理实现,不需要有具体实现类
2013-06-12 09:50 2952原文链接:http://www.javaarch.net/j ... -
Java EE 7中对WebSocket 1.0的支持
2013-06-05 09:27 3837原文链接:http://www.javaarch.n ... -
Java Web使用swfobject调用flex图表
2013-05-28 19:05 1121Java Web使用swfobject调用 ... -
spring使用PropertyPlaceholderConfigurer扩展来满足不同环境的参数配置
2013-05-21 15:57 3332spring使用PropertyPlaceholderCon ... -
java国际化
2013-05-20 20:57 4472java国际化 本文来自:http://www.j ... -
RSS feeds with Java
2013-05-20 20:52 1214RSS feeds with Java 原文来自:htt ... -
使用ibatis将数据库从oracle迁移到mysql的几个修改点
2013-04-29 10:40 1674我们项目在公司的大战略下需要从oracle ... -
线上机器jvm dump分析脚本
2013-04-19 10:48 2905#!/bin/sh DUMP_PIDS=`p ... -
eclipse远程部署,静态文件实时同步插件
2013-04-06 20:18 5460eclipse 远程文件实时同步,eclipse远程 ... -
java价格处理的一个问题
2013-03-26 21:21 1829我们经常会处理一些价格,比如从运营上传的文件中将某 ... -
java 服务降级开关设计思路
2013-03-23 16:35 3764java 服务屏蔽开关系统,可以手工降级服务,关闭服 ... -
poi解析excel内存溢出
2013-03-20 22:21 6397真是悲剧啊,一个破内部使用系统20多个人使用的后 ... -
简单web安全框架
2013-03-16 11:56 1543web安全框架,主要用servlet filter方 ... -
基于servlet的简单的页面缓存框架
2013-03-11 19:27 1216基于servlet的页面级缓存框架的基本用法: 代码参考: ... -
Eclipse使用过程中出现java.lang.NoClassDefFoundError的解决方案
2013-02-01 17:22 1572如果jdk,classpath设置正确,突然在eclipse ... -
jetty对于包的加载顺序的处理
2013-01-28 22:58 41301.问题 今天在本地和测试环境用jet ... -
hsqldb源码分析系列6之事务处理
2013-01-20 15:20 1706在session的 public Result ...
相关推荐
Java 缓存系统(Java Caching System,简称JCS)是一种高效的、可扩展的缓存解决方案,主要用于提高应用程序性能,减少对数据库的访问频率。它通过存储数据在内存中,使得重复请求的数据能够快速获取,从而降低了...
JCS(Java Caching System)是一个开源的、高性能的缓存框架,它主要用于提高应用的性能和响应速度,通过将常用数据存储在内存中,避免了频繁地访问数据库或文件系统。JCS 1.3 版本在早期的版本基础上进行了优化和...
osCache基于JCS(Java Caching System)设计,提供了一个灵活的缓存策略,包括设置缓存过期时间、最大容量、内存分配方式等。osCache可以通过XML配置文件或者编程方式进行配置,使得开发者可以根据实际需求定制缓存...
2. jcs-1.3.jar:Java Caching System (JCS) 是一个内存缓存系统,用于提高Web应用的性能。开发者可以通过JCS存储和检索频繁使用的数据,避免了重复计算或数据库查询,从而降低响应时间。 3. jettison-1.3.3.jar:这...
例如,Java中的`Guava Cache`,.NET Framework的`System.Runtime.Caching`,或者分布式缓存如Redis、Memcached等。 3. **缓存穿透**:当请求的数据既不在缓存中也不在数据库中时,可能会导致大量的数据库查询,这...
5. **Caching(缓存)**:提高性能,分为一级缓存(Session 内部缓存)和二级缓存(可配置的外部缓存,如 Ehcache)。 **三、Hibernate 实例应用** 以 `hibernate测试.txt` 和 `hibernatetest` 文件为例,假设我们...
【REST(Representational State Transfer)】 ... 在"rest-example:REST应用程序示例...通过分析这个REST示例,开发者可以学习到如何使用Java来设计和实现RESTful服务,理解REST的基本原则,并熟悉相关开发工具和框架。
Javadoc 是一种用于生成关于 Java 类、接口、构造函数、方法等详细信息的工具,通常包含注释、参数、返回值、异常、示例代码等,对于开发者理解和使用 Hibernate 非常有帮助。 **详细知识点:** 1. **Hibernate ...
4. **设计模式**:在C#开发中,可以使用如`System.Runtime.Caching`命名空间下的`MemoryCache`类来实现GC感知缓存。这个类提供了内置的过期策略,并且能够集成到.NET的内存管理中。 5. **缓存替换策略**:除了TTL...
Hibernate API 是一个强大的Java持久化框架,用于简化数据库操作。这个API主要针对关系型数据库,提供了对象-关系映射(ORM)功能,使得开发者可以用面向对象的方式来操作数据库,而无需直接编写SQL语句。在...
此外,Speedframework 内置了JCS(Java Caching System)缓存系统。JCS是一个高度可配置的、分布式的缓存解决方案,它可以极大地提高应用的性能,减少对数据库的直接访问。通过将频繁访问的数据存储在内存中,JCS...
在处理`DNSTest-master`这个压缩包时,我们可以假设它包含了一个示例项目或者测试框架,用于演示如何在Java中进行DNS测试。项目可能包含以下部分: 1. `src/main/java`:源代码目录,可能有一个名为`DNSTest`的类,...
- **使用示例**:为每个组件提供使用示例,帮助开发者更好地理解和使用这些组件。 通过上述内容,我们可以看到,《Manning Zend Framework in Action》是一本全面介绍了 Zend Framework 的书籍,不仅适合初学者快速...
开发REST API时,开发者可以使用各种工具和技术,如Node.js的Express框架、Python的Flask或Django框架、Java的Spring Boot等。同时,对于API文档的编写,Swagger或OpenAPI规范可以生成交互式的API文档,方便开发者和...