diff --git a/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpAutoConfiguration.java b/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpAutoConfiguration.java index 42fcaf3a5..e2b0a60d2 100644 --- a/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpAutoConfiguration.java +++ b/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpAutoConfiguration.java @@ -5,6 +5,11 @@ import org.springframework.boot.context.properties.EnableConfigurationProperties import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; +/** + * . + * + * @author someone + */ @Configuration @EnableConfigurationProperties(WxMpProperties.class) @Import({WxMpStorageAutoConfiguration.class, WxMpServiceAutoConfiguration.class}) diff --git a/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpServiceAutoConfiguration.java b/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpServiceAutoConfiguration.java index 9d2b94765..c39402ac7 100644 --- a/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpServiceAutoConfiguration.java +++ b/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpServiceAutoConfiguration.java @@ -12,42 +12,44 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; /** - * 微信公众号相关服务自动注册 + * 微信公众号相关服务自动注册. + * + * @author someone */ @Configuration public class WxMpServiceAutoConfiguration { - @Autowired - private ApplicationContext ctx; + @Autowired + private ApplicationContext ctx; - @Bean - @ConditionalOnMissingBean - public WxMpService wxMpService(WxMpConfigStorage configStorage) { - WxMpService wxMpService = new WxMpServiceImpl(); - wxMpService.setWxMpConfigStorage(configStorage); - registerWxMpSubService(wxMpService); - return wxMpService; - } + @Bean + @ConditionalOnMissingBean + public WxMpService wxMpService(WxMpConfigStorage configStorage) { + WxMpService wxMpService = new WxMpServiceImpl(); + wxMpService.setWxMpConfigStorage(configStorage); + registerWxMpSubService(wxMpService); + return wxMpService; + } - @ConditionalOnBean(WxMpService.class) - public Object registerWxMpSubService(WxMpService wxMpService) { - ConfigurableListableBeanFactory factory = (ConfigurableListableBeanFactory) ctx.getAutowireCapableBeanFactory(); - factory.registerSingleton("wxMpKefuService", wxMpService.getKefuService()); - factory.registerSingleton("wxMpMaterialService", wxMpService.getMaterialService()); - factory.registerSingleton("wxMpMenuService", wxMpService.getMenuService()); - factory.registerSingleton("wxMpUserService", wxMpService.getUserService()); - factory.registerSingleton("wxMpUserTagService", wxMpService.getUserTagService()); - factory.registerSingleton("wxMpQrcodeService", wxMpService.getQrcodeService()); - factory.registerSingleton("wxMpCardService", wxMpService.getCardService()); - factory.registerSingleton("wxMpDataCubeService", wxMpService.getDataCubeService()); - factory.registerSingleton("wxMpUserBlacklistService", wxMpService.getBlackListService()); - factory.registerSingleton("wxMpStoreService", wxMpService.getStoreService()); - factory.registerSingleton("wxMpTemplateMsgService", wxMpService.getTemplateMsgService()); - factory.registerSingleton("wxMpSubscribeMsgService", wxMpService.getSubscribeMsgService()); - factory.registerSingleton("wxMpDeviceService", wxMpService.getDeviceService()); - factory.registerSingleton("wxMpShakeService", wxMpService.getShakeService()); - factory.registerSingleton("wxMpMemberCardService", wxMpService.getMemberCardService()); - factory.registerSingleton("wxMpMassMessageService", wxMpService.getMassMessageService()); - return Boolean.TRUE; - } + @ConditionalOnBean(WxMpService.class) + public Object registerWxMpSubService(WxMpService wxMpService) { + ConfigurableListableBeanFactory factory = (ConfigurableListableBeanFactory) ctx.getAutowireCapableBeanFactory(); + factory.registerSingleton("wxMpKefuService", wxMpService.getKefuService()); + factory.registerSingleton("wxMpMaterialService", wxMpService.getMaterialService()); + factory.registerSingleton("wxMpMenuService", wxMpService.getMenuService()); + factory.registerSingleton("wxMpUserService", wxMpService.getUserService()); + factory.registerSingleton("wxMpUserTagService", wxMpService.getUserTagService()); + factory.registerSingleton("wxMpQrcodeService", wxMpService.getQrcodeService()); + factory.registerSingleton("wxMpCardService", wxMpService.getCardService()); + factory.registerSingleton("wxMpDataCubeService", wxMpService.getDataCubeService()); + factory.registerSingleton("wxMpUserBlacklistService", wxMpService.getBlackListService()); + factory.registerSingleton("wxMpStoreService", wxMpService.getStoreService()); + factory.registerSingleton("wxMpTemplateMsgService", wxMpService.getTemplateMsgService()); + factory.registerSingleton("wxMpSubscribeMsgService", wxMpService.getSubscribeMsgService()); + factory.registerSingleton("wxMpDeviceService", wxMpService.getDeviceService()); + factory.registerSingleton("wxMpShakeService", wxMpService.getShakeService()); + factory.registerSingleton("wxMpMemberCardService", wxMpService.getMemberCardService()); + factory.registerSingleton("wxMpMassMessageService", wxMpService.getMassMessageService()); + return Boolean.TRUE; + } } diff --git a/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpStorageAutoConfiguration.java b/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpStorageAutoConfiguration.java index 1c9171629..18024707a 100644 --- a/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpStorageAutoConfiguration.java +++ b/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/config/WxMpStorageAutoConfiguration.java @@ -2,6 +2,7 @@ package com.binarywang.spring.starter.wxjava.mp.config; import com.binarywang.spring.starter.wxjava.mp.properties.RedisProperties; import com.binarywang.spring.starter.wxjava.mp.properties.WxMpProperties; +import lombok.RequiredArgsConstructor; import me.chanjar.weixin.mp.config.WxMpConfigStorage; import me.chanjar.weixin.mp.config.impl.WxMpDefaultConfigImpl; import me.chanjar.weixin.mp.config.impl.WxMpRedisConfigImpl; @@ -13,74 +14,75 @@ import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; /** - * 微信公众号存储策略自动配置 + * 微信公众号存储策略自动配置. + * + * @author someone */ @Configuration +@RequiredArgsConstructor public class WxMpStorageAutoConfiguration { + private final WxMpProperties properties; - @Autowired - private WxMpProperties properties; + @Autowired(required = false) + private JedisPool jedisPool; - @Autowired(required = false) - private JedisPool jedisPool; + @Bean + @ConditionalOnMissingBean(WxMpConfigStorage.class) + public WxMpConfigStorage wxMpInMemoryConfigStorage() { + WxMpProperties.ConfigStorage storage = properties.getConfigStorage(); + WxMpProperties.StorageType type = storage.getType(); - @Bean - @ConditionalOnMissingBean(WxMpConfigStorage.class) - public WxMpConfigStorage wxMpInMemoryConfigStorage() { - WxMpProperties.ConfigStorage storage = properties.getConfigStorage(); - WxMpProperties.StorageType type = storage.getType(); - - if (type == WxMpProperties.StorageType.redis) { - return getWxMpInRedisConfigStorage(); - } - return getWxMpInMemoryConfigStorage(); + if (type == WxMpProperties.StorageType.redis) { + return getWxMpInRedisConfigStorage(); } + return getWxMpInMemoryConfigStorage(); + } - private WxMpDefaultConfigImpl getWxMpInMemoryConfigStorage() { - WxMpDefaultConfigImpl config = new WxMpDefaultConfigImpl(); - setWxMpInfo(config); - return config; + private WxMpDefaultConfigImpl getWxMpInMemoryConfigStorage() { + WxMpDefaultConfigImpl config = new WxMpDefaultConfigImpl(); + setWxMpInfo(config); + return config; + } + + private WxMpRedisConfigImpl getWxMpInRedisConfigStorage() { + JedisPool poolToUse = jedisPool; + if (poolToUse == null) { + poolToUse = getJedisPool(); } + WxMpRedisConfigImpl config = new WxMpRedisConfigImpl(poolToUse); + setWxMpInfo(config); + return config; + } - private WxMpRedisConfigImpl getWxMpInRedisConfigStorage() { - JedisPool poolToUse = jedisPool; - if (poolToUse == null) { - poolToUse = getJedisPool(); - } - WxMpRedisConfigImpl config = new WxMpRedisConfigImpl(poolToUse); - setWxMpInfo(config); - return config; + private void setWxMpInfo(WxMpDefaultConfigImpl config) { + config.setAppId(properties.getAppId()); + config.setSecret(properties.getSecret()); + config.setToken(properties.getToken()); + config.setAesKey(properties.getAesKey()); + } + + private JedisPool getJedisPool() { + WxMpProperties.ConfigStorage storage = properties.getConfigStorage(); + RedisProperties redis = storage.getRedis(); + + JedisPoolConfig config = new JedisPoolConfig(); + if (redis.getMaxActive() != null) { + config.setMaxTotal(redis.getMaxActive()); } - - private void setWxMpInfo(WxMpDefaultConfigImpl config) { - config.setAppId(properties.getAppId()); - config.setSecret(properties.getSecret()); - config.setToken(properties.getToken()); - config.setAesKey(properties.getAesKey()); + if (redis.getMaxIdle() != null) { + config.setMaxIdle(redis.getMaxIdle()); } - - private JedisPool getJedisPool() { - WxMpProperties.ConfigStorage storage = properties.getConfigStorage(); - RedisProperties redis = storage.getRedis(); - - JedisPoolConfig config = new JedisPoolConfig(); - if (redis.getMaxActive() != null) { - config.setMaxTotal(redis.getMaxActive()); - } - if (redis.getMaxIdle() != null) { - config.setMaxIdle(redis.getMaxIdle()); - } - if (redis.getMaxWaitMillis() != null) { - config.setMaxWaitMillis(redis.getMaxWaitMillis()); - } - if (redis.getMinIdle() != null) { - config.setMinIdle(redis.getMinIdle()); - } - config.setTestOnBorrow(true); - config.setTestWhileIdle(true); - - JedisPool pool = new JedisPool(config, redis.getHost(), redis.getPort(), - redis.getTimeout(), redis.getPassword(), redis.getDatabase()); - return pool; + if (redis.getMaxWaitMillis() != null) { + config.setMaxWaitMillis(redis.getMaxWaitMillis()); } + if (redis.getMinIdle() != null) { + config.setMinIdle(redis.getMinIdle()); + } + config.setTestOnBorrow(true); + config.setTestWhileIdle(true); + + JedisPool pool = new JedisPool(config, redis.getHost(), redis.getPort(), + redis.getTimeout(), redis.getPassword(), redis.getDatabase()); + return pool; + } } diff --git a/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/properties/RedisProperties.java b/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/properties/RedisProperties.java index 0f0aeca96..d95e8df98 100644 --- a/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/properties/RedisProperties.java +++ b/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/properties/RedisProperties.java @@ -5,38 +5,41 @@ import lombok.Data; import java.io.Serializable; /** - * Redis配置 + * Redis配置. + * + * @author someone */ @Data public class RedisProperties implements Serializable { + private static final long serialVersionUID = -5924815351660074401L; - /** - * 主机地址 - */ - private String host = "127.0.0.1"; + /** + * 主机地址. + */ + private String host = "127.0.0.1"; - /** - * 端口号 - */ - private int port = 6379; + /** + * 端口号. + */ + private int port = 6379; - /** - * 密码 - */ - private String password; + /** + * 密码. + */ + private String password; - /** - * 超时 - */ - private int timeout = 2000; + /** + * 超时. + */ + private int timeout = 2000; - /** - * 数据库 - */ - private int database = 0; + /** + * 数据库. + */ + private int database = 0; - private Integer maxActive; - private Integer maxIdle; - private Integer maxWaitMillis; - private Integer minIdle; + private Integer maxActive; + private Integer maxIdle; + private Integer maxWaitMillis; + private Integer minIdle; } diff --git a/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/properties/WxMpProperties.java b/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/properties/WxMpProperties.java index 085916cda..0dbca9e77 100644 --- a/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/properties/WxMpProperties.java +++ b/starters/wx-java-mp-starter/src/main/java/com/binarywang/spring/starter/wxjava/mp/properties/WxMpProperties.java @@ -10,7 +10,9 @@ import static com.binarywang.spring.starter.wxjava.mp.properties.WxMpProperties. /** - * 微信接入相关配置属性 + * 微信接入相关配置属性. + * + * @author someone */ @Data @ConfigurationProperties(PREFIX) @@ -18,33 +20,34 @@ public class WxMpProperties { public static final String PREFIX = "wx.mp"; /** - * 设置微信公众号的appid + * 设置微信公众号的appid. */ private String appId; /** - * 设置微信公众号的app secret + * 设置微信公众号的app secret. */ private String secret; /** - * 设置微信公众号的token + * 设置微信公众号的token. */ private String token; /** - * 设置微信公众号的EncodingAESKey + * 设置微信公众号的EncodingAESKey. */ private String aesKey; /** - * 存储策略, memory, redis + * 存储策略, memory, redis. */ private ConfigStorage configStorage = new ConfigStorage(); @Data public static class ConfigStorage implements Serializable { + private static final long serialVersionUID = 4815731027000065434L; private StorageType type = memory; @@ -53,6 +56,13 @@ public class WxMpProperties { } public enum StorageType { - memory, redis + /** + * 内存. + */ + memory, + /** + * redis. + */ + redis } }