tomcat启动时将缓存放入Redis中

来源:互联网 发布:装修网络推广 编辑:程序博客网 时间:2024/06/15 13:16
package com.tmhc.sms.cache;import java.util.List;import java.util.Map;import java.util.Set;import javax.annotation.PostConstruct;import org.apache.log4j.Logger;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Configuration;import redis.clients.jedis.Jedis;import com.alibaba.fastjson.JSONObject;import com.tmhc.sms.service.SysDepartmentEntityService;import com.tmhc.sms.utils.RedisUtil;@Configurationpublic class LoadData {private Logger logger = Logger.getLogger(LoadData.class);@Autowiredprivate SysDepartmentEntityService sysDepartmentEntityServiceImpl;@PostConstruct  public void loadData(){new Thread(){public void run(){while(true){try {Thread.sleep(1000*2);} catch (InterruptedException e) {e.printStackTrace();}logger.info("加载商户数据......");List<Map<String, String>> mapList = sysDepartmentEntityServiceImpl.getDepartmentData();Jedis jedis = RedisUtil.getJedis();//清空缓存数据Set<String> set = jedis.keys("depart-*");for(String key : set){jedis.del(key);  }//加载所有缓存数据for (Map<String, String> map : mapList) {String referralcode = map.get("referralcode");String value = JSONObject.toJSONString(map);jedis.rpush("depart-"+referralcode, value);//在名称为key的list尾添加一个值为value的元素}break;}}}.start();}}

原创粉丝点击