公共参数
    image.png

    image.png
    image.png

    1. public class TemplateMag {
    2. public static void sendTemMag() throws IOException {
    3. //获取ACCESSTOKEN
    4. String url = String.format(GlobalConstant.wechatDeploy.GETACCESSTOKEN, GlobalConstant.wechatDeploy.APPID, GlobalConstant.wechatDeploy.SECRETID);
    5. String str = HttpUtil.get(url);
    6. Map accessTokenMap = JSON.parseObject(str, Map.class);
    7. String accessToken = accessTokenMap.get("access_token").toString();
    8. //发送消息
    9. String urlPost = String.format(GlobalConstant.wechatDeploy.URLPOST,accessToken);
    10. String post = HttpUtil.post(urlPost, dataMag());
    11. System.out.println(post);
    12. }
    13. public static void main(String[] args) throws IOException {
    14. sendTemMag();
    15. }
    16. /**
    17. * 模板内容
    18. * 尊敬的{{User.DATA}}先生
    19. * 你的尾号为{{CardNumber.DATA}} 的XX信用卡
    20. * 交易时间:{{DeadTime.DATA}}
    21. * 交易类型:{{Type.DATA}}
    22. * 交易金额:{{Money.DATA}}
    23. *
    24. **/
    25. /**
    26. * 设置post数据
    27. * @author xuemd
    28. * @date 2020/4/1 11:24
    29. **/
    30. private static String dataMag(){
    31. Map<String,Object> user = new HashMap<>();
    32. user.put("value","黄先生");
    33. user.put("color","#173177");
    34. Map<String,Object> cardnumber = new HashMap<>();
    35. cardnumber.put("value","0426");
    36. cardnumber.put("color","#173177");
    37. Map<String,Object> type = new HashMap<>();
    38. type.put("value","消费");
    39. type.put("color","#173177");
    40. Map<String,Object> money = new HashMap<>();
    41. money.put("value","人民币260.00元");
    42. money.put("color","#173177");
    43. Map<String,Object> deadtime = new HashMap<>();
    44. deadtime.put("value","06月07日19时24分");
    45. deadtime.put("color","#173177");
    46. Map<String,Object> mapData = new HashMap<>();
    47. mapData.put("User",user);
    48. mapData.put("CardNumber",cardnumber);
    49. mapData.put("Type",type);
    50. mapData.put("Money",money);
    51. mapData.put("DeadTime",deadtime);
    52. Map<String,Object> map = new HashMap<>();
    53. map.put("touser", GlobalConstant.wechatDeploy.OPENID);
    54. map.put("template_id","FNtK1DzOm9uTJYoeZ-Z8pW9OrxDgAh51pNWV8kybxEc");
    55. map.put("data",mapData);
    56. map.put("url","https://www.baidu.com/");
    57. return JSON.toJSONString(map);
    58. }
    59. }
    1. public class GlobalConstant {
    2. /**
    3. * 微信参数
    4. */
    5. public static class wechatDeploy {
    6. public static final String APPID = "XXXXXXXXXX";
    7. public static final String SECRETID = "XXXXXXXXXXXXXXXXXXXXXXXX";
    8. public static final String OPENID = "XXXXXXXXXXXXXXX";
    9. public static String GETACCESSTOKEN = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s";
    10. public static String URLPOST = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=%s";
    11. }
    12. }

    官方文档:https://mp.weixin.qq.com/debug/cgi-bin/readtmpl?t=tmplmsg/faq_tmpl
    微信公众平台接口测试帐号申请:
    https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login