Redis使用(+Springboot)

  1. 背景:将主页的目录放入Redis,加快访问速度,减轻数据库压力,并测试redis和mysql之间的查询速度差距
/**
 * 

* TODO 菜单Service *

* * @author ainy * @version 2019年7月30日 */
@Service("menuService") public class MenuServiceImpl implements IMenuService { @Autowired private MenuMapper mapper; @Autowired private RedisTemplate<String, String> redisTemplate; private final static String SYSTEM_REDISKEY_ALLMENU="allMenu"; /* * */ @Override public List<MenuEntity> getAllMenuList() { ValueOperations<String, String> opsForValue = redisTemplate.opsForValue(); boolean hasKey = redisTemplate.hasKey(SYSTEM_REDISKEY_ALLMENU); if(hasKey) { long start = System.currentTimeMillis(); String string = opsForValue.get(SYSTEM_REDISKEY_ALLMENU); long end = System.currentTimeMillis(); System.out.println("查询redis花费的时间是:" + (end - start)+"s"); List<MenuEntity> parseArray = JSON.parseArray(string, MenuEntity.class); return parseArray; }else { MenuEntityExample example = new MenuEntityExample(); long start = System.currentTimeMillis(); example.setDistinct(false); List<MenuEntity> allMneuList = mapper.selectByExample(example); long end = System.currentTimeMillis(); System.out.println("查询mysql花费的时间是:" + (end - start)+"s"); String jsonString = JSON.toJSONString(allMneuList); opsForValue.set(SYSTEM_REDISKEY_ALLMENU, jsonString, 5, TimeUnit.HOURS); return allMneuList; } }
  1. 结果
    Redis使用(+Springboot)_第1张图片

你可能感兴趣的:(#,Redis,--------数据库----)