1.创建【转换器】XStreamTransformer,实现:toXml + fromXml
2.静态代码块实现【转化器】注册
//向map中put Map<Class<?>, XStream>
static {
registerClass(WxMpXmlMessage.class);//微信推送过来的消息,xml格式.
registerClass(WxMpXmlOutMusicMessage.class);l
registerClass(WxMpXmlOutNewsMessage.class);//被动回复的图文消息xml
registerClass(WxMpXmlOutTextMessage.class);
registerClass(WxMpXmlOutImageMessage.class);
registerClass(WxMpXmlOutVideoMessage.class);
registerClass(WxMpXmlOutVoiceMessage.class);
registerClass(WxMpXmlOutTransferKefuMessage.class);
}
/**
* 会自动注册该类及其子类.
*
* @param clz 要注册的类
*/
private static void registerClass(Class<?> clz) {
XStream xstream = XStreamInitializer.getInstance();
xstream.processAnnotations(clz);
xstream.processAnnotations(getInnerClasses(clz));
if (clz.equals(WxMpXmlMessage.class)) {
// 模板消息推送成功的消息是MsgID,其他消息推送过来是MsgId
xstream.aliasField("M

本文介绍了如何在微信后台实现请求流程中的对象转换,通过创建转换器XStreamTransformer,实现了XML与对象之间的相互转换,并在静态代码块中注册了该转换器,以方便在实际操作中使用。
最低0.47元/天 解锁文章
1240

被折叠的 条评论
为什么被折叠?



