spring项目,数据字典信息写入缓存
Posted Django_1987
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring项目,数据字典信息写入缓存相关的知识,希望对你有一定的参考价值。
1. spring 配置
<!-- 基础数据写入缓存 -->
<bean id ="fymapCacheManager" class="com.thunisoft.summer.util.cache.CacheProxy">
//代理名的值,可以随便取,此处用fycache
<property name="proxyName" value="fycache"></property>
//缓存实现方法,value 是你的缓存处理类,该类应该继承AbstractCacheImpl类
<property name="cacheImpl">
<value>com.thunisoft.webservice.cache.cacheManager</value>
</property>
//初始化方法,也就是项目启动时执行的方法,该方法应该无参数,无返回值
<property name="initMethod" value="init">
</property>
//reload方法
<property name="writeMethod">
<list>
<value>reload</value>
</list>
</property>
</bean>
<!-- 缓存管理 -->
<bean id = "cacheManager" class="com.thunisoft.summer.util.cache.CacheManager" abstract="false" lazy-init="default" autowire="default"
dependency-check="default">
<property name="cache">
<list>
<ref local="fymapCacheManager"/>
</list>
</property>
</bean>
2. 缓存处理类代码
package com.thunisoft.webservice.cache;
import java.util.Map;
import org.apache.log4j.Logger;
import org.springframework.context.ApplicationContext;
import com.thunisoft.summer.util.cache.AbstractCacheImpl;
import com.thunisoft.webservice.dao.Ify2000;
import com.thunisoft.webservice.service.util.getBean;
public class cacheManager extends AbstractCacheImpl
//接口
private Ify2000 fydao;
//日志对象
private Logger log = Logger.getLogger(cacheManager.class);
private Map<Integer, Integer> fyvalueMap;
public cacheManager()
try
ApplicationContext springcontext = getBean.getYouBean();
fydao=(Ify2000) springcontext.getBean("fy2000");
catch (Exception e)
log.error("工具类,获取applicationContext中bean对象失败",e);
/**
* 获得法院映射关系
* @return
*/
public void getFyMap()
fyvalueMap= fydao.getFyMap();
public void initdata()
getFyMap();
public void init()
log.debug("法院基础数据开始写入缓存");
initdata();
public void reload()
log.debug("法院基础数据开始写入缓存");
initdata();
public Ify2000 getFydao()
return fydao;
public void setFydao(Ify2000 fydao)
this.fydao = fydao;
public Logger getLog()
return log;
public void setLog(Logger log)
this.log = log;
public Map<Integer, Integer> getFyvalueMap()
return fyvalueMap;
public void setFyvalueMap(Map<Integer, Integer> fyvalueMap)
this.fyvalueMap = fyvalueMap;
3.获取缓存数据代码
Map<Integer,Integer> fymap=null;
try
fymap = ((cacheManager)CacheManager.getCache("fycache")).getFyvalueMap();
catch (Exception e)
log.error("获取法院缓存数据失败",e);
以上是关于spring项目,数据字典信息写入缓存的主要内容,如果未能解决你的问题,请参考以下文章
04-使用Spring Cache+Redis来完成对字典数据缓存
项目一:第十四天 1.在realm中动态授权 2.Shiro整合ehcache 缓存realm中授权信息 3.动态展示菜单数据 4.Quartz定时任务调度框架—Spring整合javamail发送