JSON数据格式:以及XML文件格式,YML文件格式,properties文件格式

 

数据格式:

json数据格式:属于轻量级数据格式,是javascript的一种描述数据的格式。具有易于解析,语法简单的特点,广泛应用与网络间的数据传输。

{"name":"Li","age":"18"}
 

XML数据格式:属于重量级数据格式,在以前主要是用XML进行数据的传输,但他的格式比较复杂,传输时存在大量冗余数据。目前主要作为配置文件使用

  1.  
    <books>
  2.  
    <book>
  3.  
    <author>唐家三少</author>
  4.  
    <price>20</price>
  5.  
    <name>斗罗大陆</name>
  6.  
    </book>
  7.  
    <book>
  8.  
    <author>我吃西红柿</author>
  9.  
    <price>20</price>
  10.  
    <name>星辰变</name>
  11.  
    </book>
  12.  
    </books>

YML文件格式:一般作为配置文件使用

  1.  
    spring:
  2.  
    dataSourse:
  3.  
    url:jdbc:mysql://127.0.0.1:3306/javase
  4.  
    name:root
  5.  
    className:com.mysql
  6.  
    password:******

properties文件格式:一般作为配置文件使用,可以使用Properties工具类进行解析。格式为:key=value

classname=com._51doit.demo01
 

JSON基本语法:

JSON中 { } 表示对象,内部的元素是以字典 / 键值对的形式存在的。对于任意一种对象 / 变量的数据类型都是用 var 类型来表示的,对象内的字段作为属性,比如:name

  1.  
    #1.对象的简单格式
  2.  
    var user = {"name":"Li","age":"18"}
  3.  
    调用方式:user.name --- Li
  1.  
    #2.数组/集合格式,使用数组[]可以保存多个对象
  2.  
    var arr =
  3.  
    [
  4.  
    {"name":"Li","age":"18"},
  5.  
    {"name":"ZJ","age":"20"}
  6.  
    ]
  7.  
    调用方式:arr[0].name --- Li
  1.  
    #3.对象的嵌套格式:不允许交叉嵌套
  2.  
    var map =
  3.  
    {
  4.  
    "name":"Li",
  5.  
    "user":{"name":"zhang","age":18},
  6.  
    "users":[
  7.  
    {"name":"Li","age":"18"},
  8.  
    {"name":"ZJ","age":"20"}
  9.  
    ]
  10.  
    }
  11.  
    调用方式:
  12.  
    map.name --- Li
  13.  
    map.user.name --- zhang
  14.  
    map.users[0].age --- 18

可以在maven仓库中下载JSON的数据转换格式包,比如阿里巴巴开发的fastjson的jar包。基本步骤如下:

1.在maven repository官网下载JSON格式转换的jar包;

2.在IDE的项目的以及目录下新建文件lib,然后点中jar包右键 | build path。

JSON和java的格式转换:

注:将json格式的字符串转换成java对象的时候,要求java中的属性名和json中的key值一致。

在不熟悉的类中寻找合适的方法时,主要关注传入参数和返回值类型。

  1.  
    public static void main(String[] args){
  2.  
    //User为自定义类,新建java对象
  3.  
    User user = new User();
  4.  
    user.setName("七月流火");
  5.  
    user.setAge(25);
  6.  
    //将对象转为JSON格式的字符串
  7.  
    String str = JSON.toJsonString(user);
  8.  
    System.out.println(str);
  9.  
     
  10.  
    //将json格式的字符串转换成java对象
  11.  
    User user2 = JSON.parseObject(str,User.class);
  12.  
    System.out.println(user2)
  13.  
    }
  14.  
    ========================================
  15.  
    {"age":25,"name":"七月流火"}
  16.  
    User [name=七月流火, age=25]

JSON数据格式:以及XML文件格式,YML文件格式,properties文件格式的更多相关文章

  1. XML和JSON数据格式

    目录 XML DTD(文档类型定义) DTD实体 JSON 使用python解析JSON数据 XML和JSON的区别 XML的优缺点 JSON的优缺点 XML和JSON都是web存储和传输过程中数据的 ...

  2. JavaSe:Properties文件格式

    Properties文件格式说明 Properties继承自Hashtable,是由一组key-value的集合. 在Java中,常用properties文件作为配置文件.它的格式是什么样的呢? 下图 ...

  3. XML和JSON数据格式对比

    概念 XML 扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语 ...

  4. VS中快速生成json数据格式对应的实体

    JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度. JSON就是一串字符串 只不过元素会使用特定的符号标注. {} 双 ...

  5. VS快速生成JSON数据格式对应的实体

          有固定好的Json数据格式,你还在手动敲对应的实体吗?有点low了!步入正题,这是一个json字符串,先去验证JSON数据格式(http://www.bejson.com/)如下: { & ...

  6. JSON 数据格式

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言.易于人阅读和编写,同时也易 ...

  7. JSON数据格式

    JSON 数据格式 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言.易于人 ...

  8. MyEclipse开发JAX-RS架构WebServices收发JSON数据格式

    最近因项目需求,开始学习WebServices. 1.开发环境: MyEclipse2013 2.客户端发送的JSON数据格式为 {persons:[{"name":"a ...

  9. JSON及与XML比较

      JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于JavaScript(Standard ECMA-262 3rd Edition - Decem ...

随机推荐

  1. 爬取 豆瓣电影Top250

    目标 学习爬虫,爬豆瓣榜单,获取爬取静态页面信息的能力 豆瓣电影 Top 250  https://movie.douban.com/top250 代码 import requests from bs ...

  2. Java单例模式的几种实现

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10845530.html 一:静态内部类实现单例模式 原理:通过一个静态内部类定义一个静态变量来持有当前类实例 ...

  3. 搭建Ceph分布式存储

    环境: 系统 IP地址 主机名(登录用户) 承载角色 Centos 7.4 64Bit 1611 10.199.100.170 dlp(yzyu) ceph-client(root) admin-no ...

  4. django的form 登录组件

    1. 了解form 组件的原理 1.建立好form组件 class>>> 2.了解需要先is_valid() 判断是否可以取值 成功 form.cleaned_data 查看成功认证 ...

  5. LOJ 3160: 「NOI2019」斗主地

    题目传送门:LOJ #3160. 简要题意: 有一个长度为 \(n\) 的序列 \(a\),初始时 \(a_i=i\) 或 \(a_i=i^2\),这取决于 \(\mathrm{type}\) 的值. ...

  6. cmd 计划任务

    Schtasks /create /sc ScheduleType /tn TaskName /tr TaskRun [/s Computer [/u [Domain\]User [/p Passwo ...

  7. Selenium XPath

    目录 1.selenium是什么呢? 安装 设置浏览器引擎 2.基本使用 3.等待元素被加载 4.选择器 2. find_element_by_tag_name 3. find_element_by_ ...

  8. 说几条JavaScript的基本规范

    1.不要在同一行声明多个变量 2.使用===或!==来比较 3.使用字面量的方式来创建对象.数组,替代new Array这种形式 4.不要使用全局函数 5.switch语句必须要带default分支 ...

  9. 网络协议 17 - HTTPDNS

    全球统一的 DNS 是很权威,但是我们都知道“适合自己的,才是最好的”.很多时候,标准统一化的 DNS 并不能满足我们定制的需求,这个时候就需要 HTTPDNS 了.     上一节我们知道了 DNS ...

  10. 【JZOJ6236】【20190628】启程的日子

    题目 给你一个\(n \times m\)的01矩阵 你需要用一些矩阵加减出这个矩阵 求最少的步数,并输出方案 需要满足构造出的01矩阵是一个四联通块 $ n ,  m \le 500 $ 题解 答案 ...