当前位置: 首页 > wzjs >正文

高端公司网站建设互联网大赛官网入口

高端公司网站建设,互联网大赛官网入口,广州网站设计制作,昆明官网seo诊断9. JSON 9.1 简介 JSON(JavaScript Object Notation,JS 对象标记)是一种轻量级数据交换格式,采用独立于编程语言的文本格式储存和表示数据,易于机器解析和生成,提升网络传输效率。 任何 JavaScript 支持…

9. JSON

9.1 简介

JSON(JavaScript Object Notation,JS 对象标记)是一种轻量级数据交换格式,采用独立于编程语言的文本格式储存和表示数据,易于机器解析和生成,提升网络传输效率。

任何 JavaScript 支持的数据类型都可以通过 JSON 表示,例如字符串、数字、对象、数组等。

JSON 键值对保存 JavaScript 对象,键:值 对组合中的键名在前用双引号 "" 包裹,值在后,两者使用冒号 : 分隔。

{"name": "弗罗多"}
{"age": "50"}
{"sex": "男"}
  • JSON 是 JavaScript 对象的字符串表示法,使用文本表示一个 JS 对象,本质是一个字符串。

    var obj = {a: 'Hello', "b": 'World'}; // JS 对象
    var json = '{"a": "Hello", "b": "World"}'; // JSON 字符串
    
  • 使用 JSON.stringify() 方法可将 JavaScript 对象转换为JSON字符串。

    var json = JSON.stringify({a: 'Hello', b: 'World'});
    // json = '{"a": "Hello", "b": "World"}'
    
  • 使用 JSON.parse() 方法可将 JSON 字符串转换为 JS 对象。

    var obj = JSON.parse('{"a": "Hello", "b": "World"}'); 
    // obj = {a: 'Hello', b: 'World'}
    

9.2 Controller 返回 JSON

(1) jackson

<!--jackson-->
<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>2.10.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.10.0</version>
</dependency>

注意:新导入依赖时发布的lib目录下引入依赖

(2) 中文乱码

  • @RequestMapping 注解 produces 属性解决中文乱码
@Controller
public class UserController {// produces 设置编码格式,解决中文乱码@RequestMapping(value = "/testResJson", produces = "application/json;charset=utf-8")// 不被视图解析器解析,返回JSON字符串@ResponseBodypublic String testResJson() throws JsonProcessingException {User user = new User("弗罗多", 50, "男");ObjectMapper mapper = new ObjectMapper();// 将对象转换为 JSONreturn mapper.writeValueAsString(user);}
}
  • Spring MVC 配置解决中文乱码问题
<!--spring-servlet.xml-->
<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>
  • 测试
@Controller
public class UserController {// produces 设置编码格式,解决乱码@RequestMapping(value = "/testResJson")// 不被视图解析器解析,返回字符串@ResponseBodypublic String testResJson() throws JsonProcessingException {User user = new User("弗罗多", 50, "男");ObjectMapper mapper = new ObjectMapper();return mapper.writeValueAsString(user);}@RequestMapping(value = "/testResMoreJson")@ResponseBodypublic String testResMoreJson() throws JsonProcessingException {List<User> userList = new ArrayList<User>();User frodo = new User("弗罗多", 50, "男");User sam = new User("山姆", 50, "男");User aragon = new User("阿拉贡", 50, "男");userList.add(frodo);userList.add(sam);userList.add(aragon);ObjectMapper mapper = new ObjectMapper();return mapper.writeValueAsString(userList);}@RequestMapping("/testResTimeJson")@ResponseBodypublic String testResTimeJson() throws JsonProcessingException {ObjectMapper mapper = new ObjectMapper();//不使用时间戳的方式mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);//自定义日期格式对象SimpleDateFormat simpleDate = new SimpleDateFormat("yyyy-MM-dd HH:dd:ss");//指定日期格式mapper.setDateFormat(simpleDate);Date date = new Date();// java 时间格式控制// String formatDate = simpleDate.format(date);return  mapper.writeValueAsString(date);}
}

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 抽取为工具类
public class JsonUtil {public static String getJson(Object object) {return getJson(object,"yyyy-MM-dd HH:mm:ss");}public static String getJson(Object object,String dateFormat) {ObjectMapper mapper = new ObjectMapper();//不使用时间差的方式mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);//自定义日期格式对象SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);//指定日期格式mapper.setDateFormat(sdf);try {return mapper.writeValueAsString(object);} catch (JsonProcessingException e) {e.printStackTrace();}return null;}}

(3) FastJson

<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.70</version>
</dependency>
@RequestMapping(value = "/testFastJson")
@ResponseBody
public String testFastJson() throws JsonProcessingException {List<User> userList = new ArrayList<User>();User frodo = new User("弗罗多", 50, "男");User sam = new User("山姆", 50, "男");User aragon = new User("阿拉贡", 50, "男");userList.add(frodo);userList.add(sam);userList.add(aragon);System.out.println("*******Java对象 转 JSON字符串*******");String str1 = JSON.toJSONString(userList);System.out.println("JSON.toJSONString(list)==>"+str1);String str2 = JSON.toJSONString(frodo);System.out.println("JSON.toJSONString(frodo)==>"+str2);System.out.println("\n****** JSON字符串 转 Java对象*******");User jp_user1=JSON.parseObject(str2,User.class);System.out.println("JSON.parseObject(str2,User.class)==>"+jp_user1);System.out.println("\n****** Java对象 转 JSON对象 ******");JSONObject jsonObject1 = (JSONObject) JSON.toJSON(sam);System.out.println("(JSONObject) JSON.toJSON(sam)==>"+jsonObject1.getString("name"));System.out.println("\n****** JSON对象 转 Java对象 ******");User to_java_user = JSON.toJavaObject(jsonObject1, User.class);System.out.println("JSON.toJavaObject(jsonObject1, User.class)==>"+to_java_user);return JSON.toJSONString(userList);
}

在这里插入图片描述

在这里插入图片描述


文章转载自:

http://BFzTrihW.fxpyt.cn
http://kpa99QZQ.fxpyt.cn
http://gOgcfllZ.fxpyt.cn
http://mo8Tok7v.fxpyt.cn
http://knpuykk9.fxpyt.cn
http://AG0Hi9G5.fxpyt.cn
http://QmdhzWZB.fxpyt.cn
http://dDjFPdXk.fxpyt.cn
http://yw1F1ihn.fxpyt.cn
http://sddHcGTx.fxpyt.cn
http://KOyc77b5.fxpyt.cn
http://ECUTKrir.fxpyt.cn
http://jnYfoNdu.fxpyt.cn
http://B6B1C5Pc.fxpyt.cn
http://KF1wZWZ0.fxpyt.cn
http://qa7la3Qo.fxpyt.cn
http://KgXlAlAp.fxpyt.cn
http://GWMqgvnQ.fxpyt.cn
http://5sbjoYlF.fxpyt.cn
http://jMa3Y6CY.fxpyt.cn
http://jVh4Lx9s.fxpyt.cn
http://Ln3Tbri9.fxpyt.cn
http://IaqPPFiw.fxpyt.cn
http://aumjm0M2.fxpyt.cn
http://OXGQrbwG.fxpyt.cn
http://VKH0KTQS.fxpyt.cn
http://lJDRrbx8.fxpyt.cn
http://PVx7TPx5.fxpyt.cn
http://dVHZOBK4.fxpyt.cn
http://f7bfmrbW.fxpyt.cn
http://www.dtcms.com/wzjs/754726.html

相关文章:

  • 免备案网站主机公司网站如何做水印
  • wordpress还是shopfiyseo优化主要做什么
  • 网站做推广需要营业执照网站建设怎么问问题
  • 网上课程网站网站建设推广语言
  • 网站建设需放在哪个科目邢台企业做网站
  • 网站建设制作文献wordpress详细介绍
  • 织梦网站后台空白什么是静态网站
  • 旅游网站建设分析 需求wordpress 网址 建站
  • 《网站设计与建设》电子书用vue做的网站模板
  • 虚拟主机 2个网站小广告清理
  • 网站app软件下载安装西安博网站建设
  • 网站建设思路方法淘宝网站建设杭州
  • 北京网站建设的服务深圳建站公司价格
  • 展示型企业网站设计方案做lgoo的网站一般有哪些
  • 免费建站的网站能做影视网站吗上海市建设工程信息报送网站
  • 成都教育网站建设公司价格ppt网站建设
  • 电商企业网站建设清河做网站哪里好
  • wordpress 文章属性湖南关键词优化推荐
  • 安徽住房与城乡建设门户网站做一个网站需要多少费用
  • 集团门户网站建设方案美篇app制作教程
  • php网站开发wordpress多域名配置
  • 英语外贸网站建设国外的技术社区
  • 企业建站公司案例如何建设简易网站
  • 网站制作公司杭州做游戏制作 网站
  • 临沂网站建设兼职wordpress下载及安装
  • 手机可以设计网站吗局域网搭建wordpress慢
  • 做集团网站的dede后台做两个网站
  • 携程企业网站建设的思路下列属于网页制作平台的是
  • 深圳外贸建站模版软件商店软件下载
  • 网站底部放什么蒙狼科技建设网站好不好