mirror of
				https://gitee.com/binary/weixin-java-tools.git
				synced 2025-11-01 03:25:35 +08:00 
			
		
		
		
	#559 微信开放平台:1. WxOpenInRedisConfigStorage 支持 JedisPool/JedisSentinelPool 等 Pool<Jedis> 的子类;2. WxOpenInRedisConfigStorage 增加 keyPrefix 以支持可配置的前缀;
This commit is contained in:
		| @ -1,7 +1,9 @@ | ||||
| package me.chanjar.weixin.open.api.impl; | ||||
|  | ||||
| import org.apache.commons.lang3.StringUtils; | ||||
| import redis.clients.jedis.Jedis; | ||||
| import redis.clients.jedis.JedisPool; | ||||
| import redis.clients.util.Pool; | ||||
|  | ||||
| /** | ||||
|  * @author <a href="https://github.com/007gzs">007</a> | ||||
| @ -15,7 +17,11 @@ public class WxOpenInRedisConfigStorage extends WxOpenInMemoryConfigStorage { | ||||
|   private final static String JSAPI_TICKET_KEY = "wechat_jsapi_ticket:"; | ||||
|   private final static String CARD_API_TICKET_KEY = "wechat_card_api_ticket:"; | ||||
|  | ||||
|   protected final JedisPool jedisPool; | ||||
|   protected final Pool<Jedis> jedisPool; | ||||
|   /** | ||||
|    * redis 存储的 key 的前缀,可为空 | ||||
|    */ | ||||
|   private String keyPrefix; | ||||
|   private String componentVerifyTicketKey; | ||||
|   private String componentAccessTokenKey; | ||||
|   private String authorizerRefreshTokenKey; | ||||
| @ -23,6 +29,15 @@ public class WxOpenInRedisConfigStorage extends WxOpenInMemoryConfigStorage { | ||||
|   private String jsapiTicketKey; | ||||
|   private String cardApiTicket; | ||||
|  | ||||
|   public WxOpenInRedisConfigStorage(Pool<Jedis> jedisPool) { | ||||
|     this.jedisPool = jedisPool; | ||||
|   } | ||||
|  | ||||
|   public WxOpenInRedisConfigStorage(Pool<Jedis> jedisPool, String keyPrefix) { | ||||
|     this.jedisPool = jedisPool; | ||||
|     this.keyPrefix = keyPrefix; | ||||
|   } | ||||
|  | ||||
|   public WxOpenInRedisConfigStorage(JedisPool jedisPool) { | ||||
|     this.jedisPool = jedisPool; | ||||
|   } | ||||
| @ -30,10 +45,12 @@ public class WxOpenInRedisConfigStorage extends WxOpenInMemoryConfigStorage { | ||||
|   @Override | ||||
|   public void setComponentAppId(String componentAppId) { | ||||
|     super.setComponentAppId(componentAppId); | ||||
|     this.componentVerifyTicketKey = COMPONENT_VERIFY_TICKET_KEY.concat(componentAppId); | ||||
|     this.componentAccessTokenKey = COMPONENT_ACCESS_TOKEN_KEY.concat(componentAppId); | ||||
|     this.authorizerRefreshTokenKey = AUTHORIZER_REFRESH_TOKEN_KEY.concat(componentAppId); | ||||
|     this.authorizerAccessTokenKey = AUTHORIZER_ACCESS_TOKEN_KEY.concat(componentAppId); | ||||
|     String prefix = StringUtils.isBlank(keyPrefix) ? "" : | ||||
|       (StringUtils.endsWith(keyPrefix, ":") ? keyPrefix : (keyPrefix + ":")); | ||||
|     componentVerifyTicketKey = prefix + COMPONENT_VERIFY_TICKET_KEY.concat(componentAppId); | ||||
|     componentAccessTokenKey = prefix + COMPONENT_ACCESS_TOKEN_KEY.concat(componentAppId); | ||||
|     authorizerRefreshTokenKey = prefix + AUTHORIZER_REFRESH_TOKEN_KEY.concat(componentAppId); | ||||
|     authorizerAccessTokenKey = prefix + AUTHORIZER_ACCESS_TOKEN_KEY.concat(componentAppId); | ||||
|     this.jsapiTicketKey = JSAPI_TICKET_KEY.concat(componentAppId); | ||||
|     this.cardApiTicket = CARD_API_TICKET_KEY.concat(componentAppId); | ||||
|   } | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Charming
					Charming