java微信开发模板消息接口使用

本文介绍了如何使用Java进行微信开发,特别是模板消息接口的使用。通过设置模板标题和内容,生成模板ID,并结合Map封装数据,实现模板消息发送给用户。文中列举了多种允许发送的模板消息类型,包括资料变更、政务服务、消费交易等各类通知示例。
摘要由CSDN通过智能技术生成

微信开发--模板消息接口

http://blog.csdn.net/u010486495/article/details/46985729

微信开发者文档:模板消息接口

模板消息运营规范:http://mp.weixin.qq.com/wiki/2/def71e3ecb5706c132229ae505815966.html(附带允许和不允许发送的模板实例)

原理:

1.微信公众号(服务号) 设置模板标题和模板内容--》生成模板ID

2.设置填充模板数据(使用map封装),匹配Id,发送给用户。

package com.dm.wx.domain.templateMsg;

import java.util.Map;

/**     http://zhengshuo.iteye.com/blog/2154083
 * Created by IntelliJ IDEA.
 * User: zjm
 * Date: 15-11-7
 * Time: 上午9:53
 * To change this template use File | Settings | File Templates.
 */
public class WxTemplate {
   
	private String template_id;
	private String touser;
	private String url;
	private String topcolor;
	private Map<String,TemplateData> data;

	public String getTemplate_id() {
   
		return template_id;
	}
	public void setTemplate_id(String template_id) {
   
		this.template_id = template_id;
	}
	public String getTouser() {
   
		return touser;
	}
	public void setTouser(String touser) {
   
		this.touser = touser;
	}
	public String getUrl() {
   
		return url;
	}
	public void setUrl(String url) {
   
		this.url = url;
	}
	public String getTopcolor() {
   
		return topcolor;
	}
	public void setTopcolor(String topcolor) {
   
		this.topcolor = topcolor;
	}
	public Map<String,TemplateData> getData() {
   
		return data;
	}
	public void setData(Map<String,TemplateData> data) {
   
		this.data = data;
	}
}

package com.dm.wx.domain.templateMsg;

/**
 * Created by IntelliJ IDEA.
 * User: zjm
 * Date: 15-11-7
 * Time: 上午9:54
 * To change this template use File | Settings | File Templates.
 */
public class TemplateData {
   
	private String value;
	private String color;
	public String getValue() {
   
		return value;
	}
	public void setValue(String value) {
   
		this.value = value;
	}
	public String getColor() {
   
		return color;
	}
	public void setColor(String color) {
   
		this.color = color;
	}

}

package com.dm.wx.service;

import com.dm.core.dao.SqlDao;
import com.dm.core.util.WebUtil;
import com.dm.pfb.domain.Actoken;
import com.dm.wx.domain.templateMsg.TemplateData;
import com.dm.wx.domain.templateMsg.WxTemplate;
import com.dm.wx.domain.token.AccessToken;
import com.dm.wx.util.CommonUtil;
import com.dm.wx.util.R;
import net.sf.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.HashMap;
import java.util.Map;

/**
 * Created by IntelliJ IDEA.
 * User: zjm
 * Date: 15-11-7
 * Time: 上午9:57
 * To change this template use File | Settings | File Templates.
 */
public class TemplateMsgService {
   
    private static Logger log1 = LoggerFactory.getLogger(CommonUtil.class);

    public static void sendTmsg(String access_token, WxTemplate temp) {
   
        String url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + access_token;
        String jsonString = JSONObject.fromObject(temp).toString();
        JSONObject jsonObject = CommonUtil.httpsRequest(url, "POST", jsonString);
        System.out.println(jsonObject);
        int result = 0;
        if (null != jsonObject) {
   
            if (0 != jsonObject.getInt("errcode")) {
   
                result = jsonObject.getInt("errcode");
                log1.error("错误 errcode:{} errmsg:{}", jsonObject.getInt("errcode"), jsonObject.getString("errmsg"));
            }
        }
        log1.info("模板消息发送结果:" + result);
    }

    public static WxTemplate tmsg1(String url, String open_id, String t_id) {
      //    封装模板消息
        WxTemplate t = new WxTemplate();
        t.setUrl(url);
        t
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jimin_zhou

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值