1.JSON入门:
<script type="text/javascript">
var user = {
name: "李明",
age:18,
sex:"男"
};
//将javascript对象转换成json对象
var json = JSON.stringify(user);
console.log(json);
//将json对象转换成javascript对象
var obj = JSON.parse(json);
console.log(obj);
</script>
2.解决JSON乱码问题:
在sprinmvc的配置文件里面添加:
<!--解决JSON乱码问题-->
<mvc:annotation-driven>
<mvc:message-converters register-defaults="true">
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<constructor-arg value="UTF-8"/>
</bean>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="objectMapper">
<bean class="org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean">
<property name="failOnEmptyBeans" value="false"/>
</bean>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
3.常见操作
创建一个JSONObject对象:
JSONObject resultData = new JSONObject(new LinkedHashMap<String, Object>());
将String类型的参数转换成JSONObjec对象:
JSONObject data = JSONObject.parseObject(json);
从请求报文中获取值:
String yyyy = data.getString("xxxx");
JSONObject转JSONArray:
JSONArray jsonArray = requestJsonObject.getJSONObject("entrys");
拼接相应报文:
// 最外层的对象
JSONObject responseObject = new JSONObject(new LinkedHashMap<String, Object>());
// 里面的对象
JSONObject request = new JSONObject(new LinkedHashMap<String, Object>());
JSONObject response = new JSONObject(new LinkedHashMap<String, Object>());
JSONArray requestArray = new JSONArray();
request.put("request", "将值存在request里面");
response.put("response", "将值存在response里面");
// 返回的response是数组格式
requestArray.add(response);
responseObject.put("request", request);
responseObject.put("response", requestArray);
responseArray.add(responseObject);
return responseArray;