zoukankan      html  css  js  c++  java
  • api缓存

    package com.yp.api.core.api;

    import java.util.concurrent.TimeUnit;

    import org.springframework.data.redis.core.RedisTemplate;
    import org.springframework.data.redis.core.ValueOperations;
    import org.springframework.web.client.RestClientException;

    import yp.web.client.RestTemplate;

    public class ApiTemplate
    {
    private RestTemplate restTemplate;
    private RedisTemplate redisTemplate;

    public void setRestTemplate(RestTemplate restTemplate)
    {
    this.restTemplate = restTemplate;
    }
    public void setRedisTemplate(RedisTemplate redisTemplate)
    {
    this.redisTemplate = redisTemplate;
    }
    /**
    *
    * @param url
    * @param expire 毫秒数
    * @param responseType
    * @param urlVariables
    * @return
    * @throws RestClientException
    */
    public <T> T getForObject(String url,int expire, Class<T> responseType, Object... urlVariables) throws RestClientException {
    if(expire>0)
    {
    ValueOperations<String, T> valueOper = redisTemplate.opsForValue();
    T t= valueOper.get(url);
    if(t!=null)
    {
    System.out.println(url+"命中缓存");
    return t;
    }else
    {
    t=restTemplate.getForObject(url, responseType, urlVariables);
    valueOper.set(url, t,expire,TimeUnit.SECONDS);
    return t;
    }
    }
    else
    {
    return restTemplate.getForObject(url, responseType, urlVariables);
    }
    }
    public <T> T postForObject(String url, Object request, Class<T> responseType, Object... uriVariables) throws RestClientException {
    return restTemplate.postForObject(url, request, responseType, uriVariables);
    }
    public void put(String key,Object value,int expire)
    {
    ValueOperations<String, Object> valueOper = redisTemplate.opsForValue();
    valueOper.set(key, value,expire,TimeUnit.SECONDS);
    }
    public Object get(String key){
    ValueOperations<String, Object> valueOper = redisTemplate.opsForValue();
    return valueOper.get(key);
    }
    }
  • 相关阅读:
    Android的Activity屏幕切换动画(一)-左右滑动切换
    404 Not Found 由来
    HTML+CSS 制作HTML5标志图
    发现 网站错误
    链接指南
    偷懒省事有工具啊
    程序员很穷(转)
    谷歌浏览器修改CSS和js后同步保存到文件中 (译)
    程序员眼睛的保护(爱护眼睛,你我做起)
    仿站违法和侵权吗?
  • 原文地址:https://www.cnblogs.com/flord/p/6089129.html
Copyright © 2011-2022 走看看