- 浏览: 221001 次
- 性别:
- 来自: 南京
文章分类
- 全部博客 (132)
- 企业开发 (46)
- SSO (5)
- CAS (1)
- SOAP (8)
- Oracle (5)
- Eclipse IDE (3)
- 事业 (14)
- Lucene (4)
- 课间十分钟 (2)
- maven (1)
- CMS (5)
- 设计模式 (0)
- 软件开发流程 (0)
- midas/GTS (1)
- Java Hibernate (1)
- SqlServer2005 (1)
- Jquery (1)
- Java (1)
- Java Maven Pom (1)
- Java Velocity (1)
- Jira 项目管理 (2)
- 软件开发 需求分析 (1)
- 单点登录 (1)
- 项目管理 (1)
- 时间管理 (1)
- UI 交互设计流程 (1)
- SVN (1)
- css w3c (1)
- ASP.NET FrameWork (1)
- Oracle Session Process (1)
- tomcat (1)
- Web (0)
最新评论
-
fendou3754:
程序可以运行,不过对于中文的搜索,貌似要将txt文件存为UTF ...
Lucene开发实例--代码篇 -
ewf_momo:
...
Lucene开发实例--代码篇 -
dbh0512:
我的是一段文本 每次只能创建一个索引 但是搜索不到 求解答
Lucene开发实例--代码篇 -
a496649849:
终于安装了 多谢
m2安装Eclipse3.6.1(eclipse-jee-helios-SR1-win32.zip)问题 -
lyj57:
那个"E:\\renwg\\茶余饭后\\新建文件夹& ...
Lucene开发实例--代码篇
OSCache是当前运用最广的缓存方案,JBoss,Hibernate,Spring等都对其有支持,
下面简单介绍一下OSCache的配置和使用过程。
1.安装过程
从http://www.opensymphony.com/oscache/download.action下载合适的OSCache版本,
我下载的是oscache-2.4.2-full版本。
解压缩下载的文件到指定目录
从解压缩目录取得oscache.jar 文件放到 /WEB-INF/lib 或相应类库目录 目录中,
jar文件名可能含有版本号和该版本的发布日期信息等,如oscache-2.4.1.jar
如果你的jdk版本为1.3.x,建议在lib中加入Apache Common Lib 的commons-collections.jar包。
如jdk是1.4以上则不必
从etc目录取得oscache.properties 文件,放入src根目录或发布环境的/WEB-INF/classes 目录
如你需要建立磁盘缓存,须修改oscache.properties 中的cache.path信息 (去掉前面的#注释)。
Windows类路径类似为c:\\myapp\\cache
unix类路径类似为/opt/myapp/cache
拷贝etc目录META-INF下的OSCache标签库文件oscache.tld到/WEB-INF/classes目录。
现在你的应用目录类似如下:
$WEB_APPLICATION\WEB-INF\lib\oscache.jar
$WEB_APPLICATION\WEB-INF\classes\oscache.properties
$WEB_APPLICATION\WEB-INF\classes\oscache.tld
将下列代码加入web.xml文件中
<taglib> <taglib-uri>oscache</taglib-uri> <taglib-location>/WEB-INF/classes/oscache.tld</taglib-location> </taglib>
为了便于调试日志输出,须加入commons-logging.jar和log4j-1.2.8.jar到当前类库路径中
在src目录加入下面两个日志输出配置文件:
log4j.properties 文件内容为: log4j.rootLogger=DEBUG,stdout,file log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=[start]%d{yyyy/MM/dd/ HH:mm:ss}[DATE]%n%p[PRIORITY]%n%x[NDC]%n%t[THREAD] n%c[CATEGORY]%n%m[MESSAGE]%n%n log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=oscache.log log4j.appender.file.MaxFileSize=100KB log4j.appender.file.MaxBackupIndex=5 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=[start]%d{yyyy/MM/dd/ HH:mm:ss}[DATE]%n%p[PRIORITY]%n%x[NDC]%n%t[THREAD] n%c[CATEGORY]%n%m[MESSAGE]%n%n log4j.logger.org.apache.commons=ERROR log4j.logger.com.opensymphony.oscache.base=INFO
commons-logging.properties 文件内容为
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JCategoryLog
2.oscache.properties 文件配置向导
cache.memory
值为true 或 false ,默认为在内存中作缓存,
如设置为false,那cache只能缓存到数据库或硬盘中,那cache还有什么意义:)
cache.capacity
缓存元素个数
cache.persistence.class
持久化缓存类,如此类打开,则必须设置cache.path信息
cache.cluster 相关
为集群设置信息。
如
cache.cluster.multicast.ip为广播IP地址
cache.cluster.properties为集群属性
3.OSCache的基本用法
default.do 内容如下
<%@ page import="java.util.*" %> <%@ taglib uri="oscache" prefix="cache" %> <html> <body> 没有缓存的日期: <%= new Date() %><p> <!--自动刷新--> <cache:cache time="30"> 每30秒刷新缓存一次的日期: <%= new Date() %> </cache:cache> <!--手动刷新--> <cache:cache key="testcache"> 手动刷新缓存的日期: <%= new Date() %> <p> </cache:cache> <a href="rwg109/filter/test.do/">手动刷新</a> </body> </html>
====================================
test.do 执行手动刷新页面如下
<%@ taglib uri="oscache" prefix="cache" %> <html> <body> 缓存已刷新...<p> <cache:flush key="testcache" scope="application"/> <a href="rwg109/filter/default.do">返回</a> </body> </html>
你也可以通过下面语句定义Cache的有效范围,如不定义scope,scope默认为Applcation
<cache:cache time="30" scope="session"> ... </cache:cache>
4. 缓存过滤器 CacheFilter
你可以在web.xml中定义缓存过滤器,定义特定资源的缓存。
<filter> <filter-name>CacheFilter</filter-name> <filter-class>com.opensymphony.oscache.web.filter.CacheFilter</filter-class> <init-param> <param-name>time</param-name> <param-value>60</param-value> </init-param> <init-param> <param-name>scope</param-name> <param-value>session</param-value> </init-param> </filter> <filter-mapping> <filter-name>CacheFilter</filter-name> <url-pattern>/filter/*</url-pattern> </filter-mapping>
上面定义将缓存所有以/filter/开头的页面,缓存刷新时间为60秒,缓存作用域为Session
注意,CacheFilter只捕获Http头为200的页面请求,即只对无错误请求作缓存,
而不对其他请求(如500,404,400)作缓存处理
发表评论
文章已被作者锁定,不允许评论。
-
Velocity浅析及与Jsp、Freemarker对比
2011-08-21 18:10 887Velocity 是一个基于java ... -
Google首页电吉他Doodle源代码
2011-06-10 12:22 1000为了纪念电吉他之父莱斯·保罗(Les Paul,1915 ... -
Caused by: javax.imageio.IIOException: Can't create cache file!
2011-05-23 20:17 3655验证码 无法显示问题。 错误日志为: Cause ... -
配置Resin 3+iis 支持JSP且共享80端口
2011-05-20 17:21 2336软件环境 操作系统:win2003 SDK:JDK 1.6 服 ... -
大型网站架构不得不考虑的10个问题
2011-05-17 21:28 912这里的大型网站架构 ... -
This class does not support SAAJ 1.1, weblogic?
2011-05-15 19:21 2048项目 将要迁移到 Weblogic 10.3. ... -
javax.xml.ws.soap.SOAPFaultException: This class does not support SAAJ 1.1
2011-05-15 18:24 2015]] Root cause of ServletExcepti ... -
Date 与 Calendar 计算时间及天数
2011-03-09 21:19 1622有时我们会比较时间,例如:7天前,7天后。 虽然 ... -
m2安装Eclipse3.6.1(eclipse-jee-helios-SR1-win32.zip)问题
2011-02-25 15:36 23301. m2eclipse------------------- ... -
Eclipse is running in a JRE, but a JDK is required 解决方法
2011-02-25 11:54 1571装Maven后每次启动出现警告信息: Eclipse is ... -
Apache Tomcat Tomcat5 服务因 0 (0x0) 服务性错误而停止”问题的解决
2011-02-17 20:38 1517今天又找到一个解决方法,应该比较通用。就是删除服务再重新安装。 ... -
随机产生26个英文字母
2010-12-28 16:45 1865char paramChar = (char)(Math ... -
Java字符串反转问题
2010-12-28 14:18 940java反转:可以使用 StringBuffer中的 r ... -
Java解析XML文件的四种方法
2010-12-14 21:15 6861.介绍 1)DOM(JAXP Crimson ... -
java 调用.net DLL的方法
2010-12-14 20:44 988背景: 近日一个java的项目,客户要求项目中必须使用其提 ... -
提供Java性能的十一个用法
2010-12-14 15:44 846Java语言习惯用语 1。循环 ■ 在重要的循环里,消除循 ... -
Java中的DOS下常用命令积累
2010-12-13 18:33 10371:解压jar包: xf org.eclipse.swt.w ... -
优化C盘
2010-12-08 16:44 922主要讲讲Windows操作系 ... -
Win XP使用100%网速的方法
2010-12-08 16:17 1045开始菜单里点击”运行”,输入gpedit. ... -
现实生活即将被虚拟化
2010-12-08 14:20 1142往往好的创 ...
相关推荐
- **初始化缓存**:在应用启动时初始化缓存,可通过监听器或servlet实现。 - **缓存管理**:可以编程方式清除、更新或检查缓存项。 **总结** OSCache作为一个强大的缓存解决方案,为Java开发者提供了便捷的性能...
OsCache是Java应用程序中常用的缓存框架,它能够有效地提高应用程序的性能,通过将经常访问的数据存储在内存中,减少对数据库或其他数据源的访问,从而降低系统负载。本示例将通过一个天气预报Web服务的场景,详细...
2. 初始化缓存:在应用程序启动时初始化osCache,这通常在Servlet容器的初始化回调方法中完成。 ```java OsCacheManager cacheManager = OsCacheManagerFactory.getInstance(); cacheManager.init...
- 编写Java代码:在Servlet或Controller中,使用osCache API进行缓存操作。 **5. 示例应用** 以下是一个简单的osCache在JSP页面中的应用示例: ```jsp <%@ taglib uri="http://www.opensymphony.com/oscache" ...
OSCache的使用包括在JSP或Servlet中使用OSCache标签,例如`<oscache:cache>`,或者通过API进行编程式缓存操作。可以通过设置key和expiration时间来缓存特定内容,当数据变化时,可以自动更新缓存。 在实际应用中,...
3. **初始化OSCache**:在应用启动时初始化OSCache实例,通常在Servlet容器的初始化回调方法中进行。 4. **使用OSCache**:将需要缓存的对象放入OSCache,例如: ```java Object object = ...; Cache cache = ...
- 在Web应用中,osCache可以通过Servlet Filter或监听器来初始化和清理缓存。 - 对于Struts、Spring等框架,有相应的插件支持osCache的集成。 ### 7. osCache的优化实践 - **缓存命中率**:监控和调整缓存策略以...
osCache支持页面级别的缓存,可以将整个JSP页面或者Servlet的输出结果存储起来。当用户再次请求相同的页面时,osCache会直接返回缓存的页面内容,而不是重新执行页面渲染过程。这在处理静态内容或频繁请求的页面时...
**OSCache**是一个开放源码项目,专门针对J2EE框架下的Web应用层缓存设计。它不仅能实现常规的缓存功能,还能增强系统的稳定性。本文将详细介绍如何利用OSCache来优化J2EE系统的性能,并探讨其在处理特定动态内容...
作为一种广泛应用且高性能的J2EE缓存框架,OSCache能够应用于任何Java应用程序中作为通用缓存解决方案。 **主要特点:** 1. **缓存对象多样性**:不受限制地缓存部分JSP页面或HTTP请求,任何Java对象均可缓存。 2....
2. **缓存过滤器**:在Web应用程序中,Filter是Servlet规范的一部分,允许开发者在请求到达目标Servlet或JSP之前拦截并处理它。OSCache Filter就是在HTTP请求处理链中加入的一环,用于缓存特定URL的响应内容。 **...
- **灵活的缓存系统**:OSCache支持不同级别的缓存,如页面级缓存或部分页面内容的缓存,使得开发者可以根据应用场景选择最适合的方案。 - **容错机制**:在Web应用与数据库交互失败时,OSCache可以利用缓存内容为...
3. **OSCache Servlet缓存示例**:演示如何使用OSCache框架进行Servlet级别的缓存。 #### 九、页面局部缓存 页面局部缓存用于缓存页面中的一部分内容: 1. **OSCache的页面局部缓存**:仅缓存页面中的某一部分,...
OSCache是一个由OpenSymphony组织提供的开源缓存解决方案,专为J2EE架构的Web应用程序设计,能够显著提升系统的稳定性和并发处理能力。 ### 1. 缓存技术面临的挑战 #### 1.1 处理特殊动态内容 在信息系统中,经常...
- **通用性**:除了Web应用外,Oscache还可以应用于任何Java应用程序,作为一种通用的缓存解决方案。 #### 二、Oscache的优势 Oscache具有多项优势,使其成为众多开发者首选的缓存工具。 ##### (一)Oscache的...
oscache是一个缓存框架,可以提高应用程序的性能。其配置文件通常为`oscache.xml`: 1. **Cache**:定义缓存区域,设置缓存策略,如大小、过期时间等。 2. **Listeners**:缓存事件监听器,例如在对象添加到缓存时...
oscache,java技术,数据缓存 OSCache can be used as a standalone caching solution for any Java application. OSCache's tag library and the caching filter for dynamic binary content, like PDFs or images, ...
OSCache是开源的Java缓存解决方案,它可以用于存储和快速检索数据,提高应用程序的性能。在Spring MVC中,可以配置缓存策略,例如缓存时间、缓存大小等。 2. `log4j.properties`:这是Log4j的日志配置文件,Log4j是...
为了提高系统的性能,可以使用OSCache对频繁访问的数据进行缓存。具体配置如下: - **配置OSCache过滤器** ```xml <filter-name>oscache <filter-class>...