SpringMVC接收xml/json参数的demo

一.请求方

<xml>
    <toUserName><![CDATA[1]]></toUserName>
    <fromUserName><![CDATA[2]]></fromUserName>
    <createTime>3</createTime>
    <msgType><![CDATA[4]]></msgType>
    <event><![CDATA[5]]></event>
    <deviceType><![CDATA[6]]></deviceType>
    <deviceID><![CDATA[7]]></deviceID>
    <content><![CDATA[8]]></content>
    <sessionID>9</sessionID>
    <openID><![CDATA[10]]></openID>
</xml>

2.服务器

1.封装bean类

@XmlRootElement(name="xml")
public class BundingBean {       //
	private String toUserName; 	//	是 	接收方(公众号)的user name
	private String fromUserName; //	是 	发送方(微信用户)的user name
	private String createTime; 	//	是 	消息创建时间,消息后台生成
	private String msgType;		//是 	消息类型:device_event
	private String event;		//	是 	事件类型,取值为bind/unbind bind:绑定设备 unbind:解除绑定
	private String deviceType; 	//	是 	设备类型,目前为“公众账号原始ID”
	private String eeviceID; 	//	是 	设备ID,第三方提供
	private String content; 		//是 	当Event为bind时,Content字段存放二维码中
								// 	第三方追加的自定义的数据
								// 	详情见1.5章节 获取设备二维码
								// 	或 1.11.1章节 API:获取deviceid和二维码
	private String sessionID; 	//	 是 	微信客户端生成的session id,用于request和response对应,
									//	因此响应中该字段第三方需要原封不变的带回
	private String openID; 		//	是 	 微信账号的OpenID 
        getter/setter/toString

}

2.controller层

@Controller
public class GongzhongController {
	 @RequestMapping(value="/xmlPrase", headers = {"content-type=application/xml"})
     public void addUser(@RequestBody BundingBean xml) {
		 System.out.println(xml);
     } 
}


3.结果

 System.out.println(xml);的结果是:
BundingBean [toUserName=1, fromUserName=2, createTime=3, msgType=4, event=5, deviceType=6, deviceID=7, content=8, sessionID=9, openID=10]
这就封装到对象里面了.

4.需要注意的地方:

1.本xml的根是<xml>,所以要在bean的上方加注解是name=xml
@XmlRootElement(name="xml")
如果根是其他的,那么必须改成其他的
2.controller的注解是

 @RequestMapping(value="/xmlPrase", headers = {"content-type=application/xml"})
必须要注写是xml格式的数据,而且请求方也必须content-type=application/xml,那么才可以通过xmlPrase.action访问就可以封装到bean里了

3.json和这个类似,比葫芦画瓢即可,只是不需要bean类上加注解了





  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值