365bet亚洲版登录-bet官网365入口

365bet亚洲版登录拥有超过百间客房,bet官网365入口的文化历经几十年的传承和积淀形成的核心内容获得业界广泛的认可,365bet亚洲版登录是目前信誉最高的娱乐场所,同国内外几百家网上内容供应商建立了合作关系。

JSON数据交互

一、为什么要进行json数据交互?

json数据格式在接口调用中、html页面中较常用,json格式比较简单,解析还比较方便。比如:webservice接口,传输json数据.

二、springmvc进行json交互

  1. 请求json、输出json,要求请求的是json串,所以在前端页面中需要将请求的内容转成json,不太方便。
  2. 请求key/value、输出json。此方法比较常用。

图片 1交互

三、环境准备

springmvc中使用jackson的包进行json转换(@requestBody和@responseBody使用下边的包进行json转),如下:

图片 2jar包

<!--json包--> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.7.2</version> </dependency> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-mapper-asl</artifactId> <version>1.9.13</version> </dependency>

四、配置json转换器

在注解适配器中加入messageConverters。

<!--注解适配器 --><bean > <property name="messageConverters"> <list> <bean ></bean> </list> </property></bean>

注意::如果使用<mvc:annotation-driven />则不用定义上边的内容。

五、为什么要进行json数据交互?

5.1 输入json串,输出是json串

使用jquery的ajax提交json串,对输出的json结果进行解析。页面代码:

 function requestJson() { $.ajax({ type: 'post', url: '/requestJson.action', contentType: 'application/json;charset=utf-8', //数据格式是json串,商品信息 data: '{"name":"手机","price":999}', success: function  {//返回json结果 alert; } }); }<input type="button" onclick="requestJson()" value="请求json,输出是json"/>

测试:

package com.eurasia.controller;import com.eurasia.pojo.ItemsCustom;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;/** * Created by yvettee on 2017/12/11. */@Controllerpublic class JsonTest { //请求json串,输出json() @RequestMapping("/requestJson") //@RequestBody表示将请求的商品信息json串转成ItemsCustom对象 //@ResponseBody表示将ItemsCustom对象转成json输出 public @ResponseBody ItemsCustom requestJson(@RequestBody ItemsCustom itemsCustom) { return itemsCustom; }}

结果:

图片 3输入json串,输出是json串

5.2 输入json串,输出是json串

页面代码:

 //请求key/value,输出是json function responseJson() { $.ajax({ type: 'post', url: '/responseJson.action', //请求是key/value这里不需要指定contentType,因为默认key/value类型 data:'name=手机&price=999', success: function  {//返回json结果 console.log; } }); }<input type="button" onclick="responseJson()" value="请求key/value,输出是json"/>

测试:

 //请求key/value,输出json @RequestMapping("/responseJson") public @ResponseBody ItemsCustom responseJson(ItemsCustom itemsCustom){ //@ResponseBody将itemsCustom转成json输出 return itemsCustom; }

结果:

图片 4输入json串,输出是json串

上篇:上传图片下篇:RESTful支持源代码:

本文由365bet亚洲版登录发布于计算机网络,转载请注明出处:JSON数据交互

您可能还会对下面的文章感兴趣: