前台json与后台实体bean自动对应
一、前台请求
特别注意的是:
1 data : JSON.stringify(tkt),//将生成的对象转成字符串传递后台
2 contentType:"application/json;charset=utf-8",//申明请求的媒体类型为json
<script type="text/javascript"> $(function(){ $("#testid").on("click",function(){ var tkt = {}; tkt.refundOrderId = 111111; var dts = []; var each = {}; each.passengerName='张三'; each.ticketNo='999-12435625'; each.cusRetPrice=30; each.cusRetRate=0.15; each.cusRefundPrice=600; each.cusTicketPrice=800; dts.push(each); var each1 = {}; each1.passengerName='李四'; each1.ticketNo='999-12435626'; each1.cusRetPrice=30; each1.cusRetRate=0.15; each1.cusRefundPrice=600; each1.cusTicketPrice=800; dts.push(each1); tkt.ticketInfos = dts; $.ajax({ type : "POST", url : "${contextPath }/refund/confirm/backfill.do", data : JSON.stringify(tkt), dataType: "json", contentType:"application/json;charset=utf-8", success: function(data){ console.log(data); } }); }); }) </script>
二、后台接收
特别注意的是:
1 @RequestBody spring mvc自动转换json字符串为实体
@RequestMapping(value = "/backfill", method = {RequestMethod.POST }) @ResponseBody public String backfill(@RequestBody ConfirmRefundInfo confirmRefundInfo){ //... }
三、配置json转换器
特别注意的是:
1 配置<value>application/json;charset=UTF-8</value>
<bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/html;charset=UTF-8</value> <value>application/json;charset=UTF-8</value> </list> </property> </bean>

浙公网安备 33010602011771号