-
[武汉|荣耀师兄]JAVA-石奥林0
/** * 微信的accessToken有效时间为两个小时,调用微信接口很多都要用到accessToken所以需要将accessToken保存(保存到内存中或者保存到数据库中)这里使用保存到内存中的方式实现 */package com.b505.config;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.scheduling.annotation.Scheduled;import org.springframework.stereotype.Component;import com.b505.weixin.pojo.WeixinAccessToken;import com.b505.weixin.util.WeixinCommenUtil;import com.b505.weixin.util.WeixinConstants;/** * <p>Company: B505信息技术研究所 </p> * @Description: 定时获取微信accessToken(7100s)保存到内存中 * @Create Date: 2017年10月23日上午10:47:32 * @Version: V1.00 * @Author: 追到乌云的尽头找太阳 */@Componentpublic class WeixinAccessTokenTask { Logger logger = LoggerFactory.getLogger(WeixinAccessTokenTask.class); @Autowired private WeixinCommenUtil weixinCommenUtil; // 第一次延迟1秒执行,当执行完后7100秒再执行 @Scheduled(initialDelay = 1000, fixedDelay = 7000*1000 ) public void getWeixinAccessToken(){ try { String token = weixinCommenUtil.getToken(WeixinConstants.APPID, WeixinConstants.APPSECRET).getAccess_token(); WeixinAccessToken.setToken(token); logger.info("获取到的微信accessToken为"+token); } catch (Exception e) { logger.error("获取微信adcessToken出错,信息如下"); e.printStackTrace(); this.getWeixinAccessToken(); // 此处可能陷入死循环 } }
编辑于2018-07-29
- 去第 页