mirror of
https://gitee.com/binary/weixin-java-tools.git
synced 2026-03-10 00:13:40 +08:00
✨ #1082 增加微信小程序模块的spring-boot-starter
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
package com.binarywang.spring.starter.wxjava.miniapp.config;
|
||||
|
||||
import cn.binarywang.wx.miniapp.api.WxMaService;
|
||||
import cn.binarywang.wx.miniapp.api.impl.WxMaServiceImpl;
|
||||
import cn.binarywang.wx.miniapp.config.WxMaConfig;
|
||||
import cn.binarywang.wx.miniapp.config.impl.WxMaDefaultConfigImpl;
|
||||
import com.binarywang.spring.starter.wxjava.miniapp.properties.WxMaProperties;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
/**
|
||||
* 自动配置.
|
||||
*
|
||||
* @author <a href="https://github.com/binarywang">Binary Wang</a>
|
||||
* @date 2019-08-10
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@Configuration
|
||||
@ConditionalOnClass(WxMaService.class)
|
||||
@EnableConfigurationProperties(WxMaProperties.class)
|
||||
@ConditionalOnProperty(prefix = "wx.miniapp", value = "enabled", matchIfMissing = true)
|
||||
public class WxMaAutoConfiguration {
|
||||
private WxMaProperties properties;
|
||||
|
||||
/**
|
||||
* 小程序service.
|
||||
*
|
||||
* @return 小程序service
|
||||
*/
|
||||
@Bean
|
||||
@ConditionalOnMissingBean(WxMaService.class)
|
||||
public WxMaService service() {
|
||||
WxMaDefaultConfigImpl config = new WxMaDefaultConfigImpl();
|
||||
config.setAppid(StringUtils.trimToNull(this.properties.getAppid()));
|
||||
config.setSecret(StringUtils.trimToNull(this.properties.getSecret()));
|
||||
config.setToken(StringUtils.trimToNull(this.properties.getToken()));
|
||||
config.setAesKey(StringUtils.trimToNull(this.properties.getAesKey()));
|
||||
config.setMsgDataFormat(StringUtils.trimToNull(this.properties.getMsgDataFormat()));
|
||||
|
||||
final WxMaServiceImpl service = new WxMaServiceImpl();
|
||||
service.setWxMaConfig(config);
|
||||
return service;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.binarywang.spring.starter.wxjava.miniapp.properties;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
|
||||
/**
|
||||
* 属性配置类.
|
||||
*
|
||||
* @author <a href="https://github.com/binarywang">Binary Wang</a>
|
||||
* @date 2019-08-10
|
||||
*/
|
||||
@Data
|
||||
@ConfigurationProperties(prefix = "wx.miniapp")
|
||||
public class WxMaProperties {
|
||||
/**
|
||||
* 设置微信小程序的appid.
|
||||
*/
|
||||
private String appid;
|
||||
|
||||
/**
|
||||
* 设置微信小程序的Secret.
|
||||
*/
|
||||
private String secret;
|
||||
|
||||
/**
|
||||
* 设置微信小程序消息服务器配置的token.
|
||||
*/
|
||||
private String token;
|
||||
|
||||
/**
|
||||
* 设置微信小程序消息服务器配置的EncodingAESKey.
|
||||
*/
|
||||
private String aesKey;
|
||||
|
||||
/**
|
||||
* 消息格式,XML或者JSON.
|
||||
*/
|
||||
private String msgDataFormat;
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.binarywang.spring.starter.wxjava.miniapp.config.WxMaAutoConfiguration
|
||||
Reference in New Issue
Block a user