关于SpringBoot开发微信模板推送

在这里演示一下微信的模板消息推送:

  这里使用微信测试号 来演示:

    先看下效果吧:

       

1.首先需要申请一个  微信测试号  

    https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421137522

    

 点击进入申请之后会让你扫码登入!使用微信扫码即可!

申请完成之后会显示两个测试号的信息 !appID ,appsecret 这两个很重要!

2.关注此公众号:

  

3.创建模板发送消息模板

  

由此获得模板id

{{first.DATA}} 商家名称:{{keyword1.DATA}} 商家电话:{{keyword2.DATA}} 订单号:{{keyword3.DATA}} 状态:{{keyword4.DATA}} 总价:{{keyword5.DATA}} {{remark.DATA}} 

4.回顾下我们都做了什么?

  1.首先是微信给我们的 【appIDappsecret

  2.我们需要微信扫码关注测试的公众号 获得 【微信号】也就是用户的openid

  3.创建模板 获得模板id

===开始代码的操作===

  首先需要一个jar包 也就是操作微信相关的jar包

    

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

  

 //推送
    @Override
    public void orderStatus(OrderDTO orderDTO) {
        WxMpInMemoryConfigStorage wxStorage = new WxMpInMemoryConfigStorage();
        wxStorage.setAppId("wxc05384c53b8465d1");  //appID
        wxStorage.setSecret("e6b01b0374a48085e0e4ab521d68f7cf");//appsecretID
        WxMpService wxMpService = new WxMpServiceImpl();
        wxMpService.setWxMpConfigStorage(wxStorage);

            //数据
        List<WxMpTemplateData> data = Arrays.asList(
                new WxMpTemplateData("first", "亲,请记得收货。"),
                new WxMpTemplateData("keyword1", "微信点餐"),
                new WxMpTemplateData("keyword2", "18868812345"),
                new WxMpTemplateData("keyword3", orderDTO.getOrderId()),
                new WxMpTemplateData("keyword4", orderDTO.getOrderStatusEnum().getMessage()),
                new WxMpTemplateData("keyword5", "¥" + orderDTO.getOrderAmount()),
                new WxMpTemplateData("remark", "欢迎再次光临!")
        );



        //2,推送消息
        WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()
                .toUser("otjjq1X7LiCG6gabzu2nk4Wzom0s")//要推送的用户openid
                .data(data) //数据
                .templateId("OSIT_3CoEjwdgbGvHeUb5aO8wBu62-iH8PO2ZYopRkY")//模版id
              /*  .url("https://www.baidu.com/")//点击模版消息要访问的网址*/
                .build();
        //发起推送
         try {
             String msg = wxMpService.getTemplateMsgService().sendTemplateMsg(templateMessage);
             System.out.println("推送成功:" + msg);
         } catch (Exception e) {
             System.out.println("推送失败:" + e.getMessage());
             e.printStackTrace();
         }
原文地址:https://www.cnblogs.com/gu-bin/p/10734040.html