MyBatis3 配置OSCache

配置步骤很简单,大概分为:

1、导入jar包 (oscache-2.4.1.jar ) ,项目用的框架为:Spring 3 + Struts 2 + MyBatis 3 ,所以还有好像是(commons-logging-1.1.1.jar ,log4j-1.2.17.jar要导入,这个在我项目中已经有了)。


2、导入mybatis-oscache-1.0.1.jar包,这个包apache官网有,google搜关键词吧!!


3、jar包导入完毕,配置oscache配置文件,将oscache.properties 导入到项目类路径,这个配置文件在oscache的zip文件中有


3、配置oscache.properties ,使用内存存放缓存数据

cache.memory=true

cache.algorithm=com.opensymphony.oscache.base.algorithm.LRUCache

cache.capacity=1000

只要找到相应的配置,打开注释就可以了,解释说明:

① 使用内存缓存

②使用LRUCache算法,如果你已经打开了③,②可以不打开,因为如果配置了缓存的大小size(相当于hashmap的size),就默认使用LRUCache

③配置缓存大小(个数)


4、一切ok,那么找到要使用的类的mapper文件, StoreMapper.xml ,  在配置文件中加入

  <!-- 为store类配置OSCache缓存 -->
  <cache type="org.mybatis.caches.oscache.OSCache"/>


5、到此位置,配置在 StoreMapper.xml 的所有查询都使用到了缓存

或许你又疑问,我怎么知道用到了缓存?


6、这时你要配置log4j.xml---个人之见

打印出所有的类:

log4j.xml配置如下:(在控制台上打印,当然你可以打印到文件或者数据库)

log4j.rootLogger=info,stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %p [%c] - - %M- - <%m>%n  


7、在action中查询出store类

 //查询数据库

 //查询数据库
		    List<Store> stores = storeService.selectAll(model); 
		    for(Store store: stores){
		    	log.info("这是我的store类:" + store);
		    }
可以看到打印效果:

com.***.***.domain.Store@63f3f884

com.***.***.domain.Store@5b1630fa

..........


然后再次查询,你会看到再次打印出来的效果:

com.***.***.domain.Store@63f3f884

com.***.***.domain.Store@5b1630fa

..........

还是一样的,后面的编码没有变化,如果不加那个配置,每次查询,编码都会发生变化

到此,配置成功!!!!!


一个问题我还在找:就是没法讲缓存加到一个方法里面,这种配置只是针对于一个 mapper里面的所有方法

希望有答案的大神可以指点指点,呵呵


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值