5⾏代码实现模版消息推送,springboot实现推送,java推
今天来带⼤家学习下模版消息推送。
先看效果图:
核⼼代码只有下⾯⼏⾏,即可轻松实现模版消息推送
所⽤知识点1, springboot实现java后台2,测试账号的申请
3,模版推送的配置
接下来就带领⼤家来⼀步步实现模版消息推送。
⼀,springboot创建java后台⾄于springboot怎么创建java后台,我这⾥就不再唠叨了,⼤家百度⼀下,⼀⼤堆的⽂章。这⾥只需要重点讲解下以下⼏点。1,在l⽂件⾥引⼊下⾯类库        //1,配置        WxMpInMemoryConfigStorage wxStorage = new WxMpInMemoryConfigStorage();        wxStorage.setAppId("wx77bb69292323a000");        wxStorage.setSecret("29bd368145806115ad6820133e62806e");        WxMpService wxMpService = new WxMpServiceImpl();        wxMpService.setWxMpConfigStorage(wxStorage);        //2,推送消息        WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()                .toUser("o5kho6DgC7SDry8zCmXuvHJGvrgI")//要推送的⽤户openid                .templateId("Tpln-Eue2obJ0B-8JNkgkiRJaDMPgVeIgGxna982xrg")//模版id                .url("30paotui/")//点击模版消息要访问的⽹址                .build();        try {            TemplateMsgService().sendTemplateMsg(templateMessage);        } catch (Exception e) {            System.out.println("推送失败:" + e.getMessage());        }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2,写⼀个推送的controller
⼆,接下来就来重点讲讲我们如何注册测试账号,并实现推送功能。        <!--模版消息推送三⽅sdk-->        <dependency>            <groupId>com.github.binarywang</groupId>            <artifactId>weixin-java-mp</artifactId>            <version>3.3.0</version>        </dependency>
1
2
3
4
5
6package com.qiushi.wxpush;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;import me.chanjar.weixin.mp.api.WxMpInMemoryConfigStorage;import me.chanjar.weixin.mp.api.WxMpService;import me.chanjar.weixin.mp.api.impl.WxMpServiceImpl;import me.chanjar.weixin.plate.WxMpTemplateMessage;/** * Created by qcl on 2019-03-28 * :2501902696 * desc: 模版消息推送模拟 */@RestController public class PushController {    /*    * 测试账号推送    * */    @GetMapping("/push")    public void push() {        //1,配置        WxMpInMemoryConfigStorage wxStorage = new WxMpInMemoryConfigStorage();        wxStorage.setAppId("wx77bb69292323a000");        wxStorage.setSecret("29bd368145806115ad6820133e62806e");        WxMpService wxMpService = new WxMpServiceImpl();        wxMpService.setWxMpConfigStorage(wxStorage);        //2,推送消息 
      WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()                .toUser("o5kho6DgC7SDry8zCmXuvHJGvrgI")//要推送的⽤户openid                .templateId("Tpln-Eue2obJ0B-8JNkgkiRJaDMPgVeIgGxna982xrg")//模版id                .url("30paotui/")//点击模版消息要访问的⽹址                .build();        //3,如果是正式版发送模版消息,这⾥需要配置你的信息        //        templateMessage.addData(new WxMpTemplateData("name", "value", "#FF00FF"));        //                templateMessage.addData(new WxMpTemplateData(name2, value2, color2));        try {            TemplateMsgService().sendTemplateMsg(templateMessage);        } catch (Exception e) {            System.out.println("推送失败:" + e.getMessage());            e.printStackTrace();        }    }}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
正常我们企业开发,实现模版消息推送,必须要有,备案的⽹址,并且最⿇烦的⼀点是要获取到⽤户的openid,作为个⼈,这些条件基本上都不具备。所以今天就来带⼤家注册开发测试账号,来轻松实现模版消息推送。
2,扫码关注 测试号⼆维码,给我们返回我们的openid,这个openid在推送时特别重要。因为你推送肯定要知道推送给 谁
啊,就⽐如你打电话,肯定要知道⽤户的电话号码吧。这个openid就是我们要推送给那个⽤户的唯⼀标⽰。
3,拿到这些以后,我们就可以去实现推送了。推送的代码就只有下⾯这么点。
三,推送测试代码都完成后,我们就可以来测试推送了。测试我们这个分两种1,java的单元测试
2,运⾏springboot,通过get请求来触发推送
单元测试        //1,配置        WxMpInMemoryConfigStorage wxStorage = new WxMpInMemoryConfigStorage();        wxStorage.setAppId("wx77bb69292323a000");//appid        wxStorage.setSecret("29bd368145806115ad6820133e62806e");//appsecret        WxMpService wxMpService = new WxMpServiceImpl();        wxMpService.setWxMpConfigStorage(wxStorage);        //2,推送消息        WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()                .toUser("o5kho6DgC7SDry8zCmXuvHJGvrgI")//要推送的⽤户openid                .templateId("Tpln-Eue2obJ0B-8JNkgkiRJaDMPgVeIgGxna982xrg")//模版id                .url("30paotui/")//点击模版消息要访问的⽹址                .build();        //3,如果是正式版发送模版消息,这⾥需要配置你的信息        //        templateMessage.addData(new WxMpTemplateData("name", "value", "#FF00FF"));        //                templateMessage.addData(new WxMpTemplateData(name2, value2, color2));        //发起推送        try {            String msg = TemplateMsgService().sendTemplateMsg(templateMessage);            System.out.pri
ntln("推送成功:" + msg);        } catch (Exception e) {            System.out.println("推送失败:" + e.getMessage());            e.printStackTrace();        }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15代码转换
16
17
18
19
20
21
22
23
24
25
26
package com.qiushi.wxpush;import org.junit.Test;import org.junit.runner.RunWith;import org.springframework.beans.factory.annotation.Autowired;import org.st.context.SpringBootTest;import st.context.junit4.SpringRunner;import static org.junit.Assert.*;/** * Created by qcl on 2019-03-28 * :2501902696 * desc:测试⽤例 */@RunWith(SpringRunner.class)@SpringBootTest public class PushControllerTest {    @Autowired    PushController pushController;    @Test    public void push() {        pushController.push();    }}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
单元测试其实很简单,我们只需要点击箭头所指的绿⾊按钮,即可运⾏单元测试,运⾏通过后就可以看到发送消息成功了。
log⾥可以看出我们是10:46发起推送的,看下图我们接受到的推送消息也是10:46
运⾏spr ingbo o t,通过get请求来触发推送

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。