本文整理汇总了Java中com.jfinal.plugin.redis.Redis类的典型用法代码示例。如果您正苦于以下问题:Java Redis类的具体用法?Java Redis怎么用?Java Redis使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Redis类属于com.jfinal.plugin.redis包,在下文中一共展示了Redis类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getToken
import com.jfinal.plugin.redis.Redis; //导入依赖的package包/类
/**
* 获取微信访问Token。
*
* @return 微信访问Token字符串。
*
* @since 1.0.0
* @version 1.0.0
*/
public static String getToken() {
String accessToken = Redis.use().get(WEIXIN_ACCESS_TOKEN);
if (StringUtils.isBlank(accessToken)) {
String result = HttpUtils.get(GET_ACCESS_TOKEN_URL);
Map<Object, Object> resultMap = jsonMapper.fromJson(result, javaType);
Object accessTokenObj = resultMap.get(WEIXIN_ACCESS_TOKEN);
accessToken = String.valueOf(accessTokenObj);
if (StringUtils.isBlank(accessToken)) {
logger.error("获取微信访问Token失败!微信服务器返回的数据为:{}", result);
return StringUtils.EMPTY;
}
// 缓存微信access_token,缓存时长为1小时
Redis.use().setex(WEIXIN_ACCESS_TOKEN, 3600, accessToken);
}
return accessToken;
}
示例2: handle
import com.jfinal.plugin.redis.Redis; //导入依赖的package包/类
protected void handle(ApiConfig apiConfig, ApiMethod apiMethod){
Map<String,String> querys=new HashMap<>();
if(proceedQueries(querys,apiMethod.getUrlParams())){
return;
}
Map<String,String> headers=new HashMap<>();
if(proceedHeaders(headers,apiMethod.getHeaderParams())){
return;
}
AliRequest aliRequest=new AliRequest(apiConfig.getHost(),apiConfig.getBasePath()+"/"+apiMethod.getName(),
apiConfig.getAppKey(),apiConfig.getAppSecret(),querys,headers);
String cacheKey=aliRequest.getUrl();
System.out.println(cacheKey);
Cache redis= Redis.use();
String result=redis.get(cacheKey);
if(result!=null){
renderJson(new String(result));
return;
}
try {
HttpResponse response=HttpResponse.getResponse(aliRequest);
if(response.getStatus()== 200){
result=new String(response.getContent());
redis.setThreadLocalJedis(redis.getJedis());
redis.set(cacheKey,result);
redis.expire(cacheKey,apiMethod.getCacheExpireTime()*60);
redis.removeThreadLocalJedis();
renderJson(result);
}else {
renderJson(new BaseResponse(response.getStatus(),response.getHeaderValue(SystemHeader.X_Ca_Error_Message)));
}
} catch (IOException e) {
renderJson(new BaseResponse(e.getMessage()));
e.printStackTrace();
}
}
示例3: getJsApiTicket
import com.jfinal.plugin.redis.Redis; //导入依赖的package包/类
/**
* 获取调用微信JS接口的临时票据。
*
* @return 调用微信JS接口的临时票据。
*
* @since 1.0.0
* @version 1.0.0
*/
public static String getJsApiTicket() {
String ticket = Redis.use().get(WEIXIN_JS_API_TICKET);
if (StringUtils.isBlank(ticket)) {
String accessToken = getToken();
if (StringUtils.isBlank(accessToken)) {
logger.error("获取微信访问Token失败!");
return StringUtils.EMPTY;
}
String url = String.format("https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=%s&type=jsapi", accessToken);
String result = HttpUtils.get(url);
Map<Object, Object> resultMap = jsonMapper.fromJson(result, javaType);
Object ticketObj = resultMap.get(WEIXIN_JS_API_TICKET);
ticket = String.valueOf(ticketObj);
if (StringUtils.isBlank(ticket)) {
logger.error("获取微信js api ticket失败!微信服务器返回的数据为:{}", result);
return StringUtils.EMPTY;
}
// 缓存微信js api ticket,缓存时长为1小时
Redis.use().setex(WEIXIN_JS_API_TICKET, 3600, ticket);
}
return ticket;
}
示例4: RedisAccessTokenCache
import com.jfinal.plugin.redis.Redis; //导入依赖的package包/类
public RedisAccessTokenCache() {
this.cache = Redis.use();
}