java实现微信模板消息推送

一、导入依赖

		<dependency>
			<groupId>com.github.binarywang</groupId>
			<artifactId>weixin-java-mp</artifactId>
			<version>2.7.0</version>
		</dependency>

二、登录微信公众测试号设置模板内容

1.登录微信公众平台:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

2.点击新增测试模板

3.填写内容

4.完成示例

三、编写java代码

 1 import java.util.Arrays;
 2 import java.util.List;
 3 
 4 import org.springframework.beans.factory.annotation.Autowired;
 5 import org.springframework.stereotype.Service;
 6 
 7 import com.liuhq.dto.OrderDTO;
 8 import com.liuhq.service.PushMessageService;
 9 
10 import lombok.extern.slf4j.Slf4j;
11 import me.chanjar.weixin.common.exception.WxErrorException;
12 import me.chanjar.weixin.mp.api.WxMpService;
13 import me.chanjar.weixin.mp.bean.template.WxMpTemplateData;
14 import me.chanjar.weixin.mp.bean.template.WxMpTemplateMessage;
15 
16 @Service
17 @Slf4j
18 public class PushMessageImpl implements PushMessageService {
19 
20         @Autowired
21         private WxMpService wxMpService;
22 
23         @Override
24         public void orderStatus(OrderDTO orderDTO) {
25             WxMpTemplateMessage templateMessage = new WxMpTemplateMessage();
26             templateMessage.setTemplateId("模板ID");
27             templateMessage.setToUser("要发送的人的Openid");
28              //点餐模板
29             List<WxMpTemplateData> data = Arrays.asList(
30                     new WxMpTemplateData("first", "亲,请记得收货。"),
31                     new WxMpTemplateData("keyword1", "微信点餐"),
32                     new WxMpTemplateData("keyword2", "18868812345"),
33                     new WxMpTemplateData("keyword3", orderDTO.getOrderId()),
34                     new WxMpTemplateData("keyword4", orderDTO.getOrderStatusEnum().getMessage()),
35                     new WxMpTemplateData("keyword5", "¥" + orderDTO.getOrderAmount()),
36                     new WxMpTemplateData("remark", "欢迎再次光临!")
37             );
38             templateMessage.setData(data);
39             try {
40                 wxMpService.getTemplateMsgService().sendTemplateMsg(templateMessage);
41             }catch (WxErrorException e) {
42                 log.error("【微信模版消息】发送失败, {}", e);
43             }
44         }
45 
46 }

四、成功示例

原文地址:https://www.cnblogs.com/lhq1996/p/13689416.html