Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > Java > 使用IBatis作数据缓存
【标  题】:使用IBatis作数据缓存
【关键字】:IBatis
【来  源】:http://blog.csdn.net/pwlazy/archive/2006/08/10/1046197.aspx

使用IBatis作数据缓存

Your Ad Here 背景:做一个排行榜,由于网站访问量很大,为了避免每次都直接访问数据库,所以采用缓存策略

目前我们采用IBatis作ORM, 所以我们直接使用了IBatis 自带的缓存解决方案。当然你也可以定制,我在我的一篇文章可复用、扩展的缓存设计方案也谈到了如何定制 ,个人认为如果不是非常复杂的需求,完全可以借助ORM自带的方案.你会发现非常非常简单.

下面我们进入实战:

step1)写ibatis的相关配置
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" 
"http://www.ibatis.com/dtd/sql-map-2.dtd"
>

<sqlMap namespace="specialtopic">

     ............
    
<cacheModel id="getTopVideoListByColumn1-cache" type ="OSCACHE" readOnly="true" serialize="false"> 
        
<flushInterval seconds="60"/> 
        
<property name="cache-size" value="1000" />
</cacheModel>
    
    
    ............
        
    
<statement id="getTopVideoListByColumn1" resultMap="top-Video-column1" cacheModel="getTopVideoListByColumn1-cache">
        select v.videoId,v.title,v.timeSpan,tu.loginName,vr.viewedCount 
        from top_baby_video tbv
        inner join video v on tbv.videoId=v.videoId
        inner join video_report vr on v.videoId=vr.videoId  
        inner join tvUser tu on v.tvUserId=tu.tvUserId
    
</statement>
    
</sqlMap>
    

 显而易见上面的cacheModel是缓存策略, 只需加在statement段的属性中即可

step2)写dao方法
public List getTopVideoListByColumn1 (){
        List list 
= this.getSqlMapClientTemplate().queryForList("getTopVideoListByColumn1",
                
null);
        
return list;
    }



就是这么简单,从客户端的角度看,缓存是透明的.你可以从配置文件修改你的缓存策略,不会对你的java代码造成任何影响.
翻译]SiteMesh介绍 (转):【上一篇】
Java枚举,酷! (原文发表于2006-04-25 下午01:13:48):【下一篇】
【相关文章】
  • 解决IBatis中的多对一映射n+1问题
  • iBatis学习
  • Spring+EasyJWeb+iBatis版j2ee在线购物jpetstore系统源码
  • Spring+EasyJWeb+iBatis版j2ee在线购物jpetstore系统源码发布
  • 学习一下ibatis
  • ibatisnet in dotNet 2.0 开发心得
  • NHibernate VS IbatisNet
  • 在Spring下装配iBATIS的简单例子
  • Ibatis资料
  • iBATIS for .Net 快速入门
  • 【随机文章】
  • 第一个 C 程序
  • 接入网管理技术及其应用
  • 在编程中常用的工具--今天学习的重点
  • 发现了一个关于GCC的好东西 MinGW Developer Studio
  • Linux下如何接ADSL一类的宽带猫带动局域网上internet (转)
  • PS中鲜为人知的使用技巧(一)
  • cisco ios入侵检测系统
  • 探索设计模式(1):开篇
  • [04.25.2006]MCSE笔记9
  • 退出Excel 2000
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.