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. hadoop hdfs 有内网、公网ip后,本地调试访问不了集群解决

    问题背景: 使用云上的虚拟环境搭建测试集群,导入一些数据,在本地idea做些debug调试,但是发现本地idea连接不上测试环境 集群内部配置hosts映射是内网映射(内网ip与主机名映射),本地只能 ...

  2. Linux下远程连接MySQL数据库

    估计搞了一个多小时才把这个远程连接搞好.一台本地电脑,一台云服务器,都是linux系统. 步骤 在服务器端开启远程访问 首先进入mysql数据库,然后输入下面两个命令: grant all privi ...

  3. 可变lambda, lambda使用mutable关键字

    关于lambda的捕获和调用 C++ primer上对可变lambda举的例子如下: size_t v1=42; auto f=[v1] () mutable{return ++v1; }; v1=0 ...

  4. PAT 乙级 1036.跟奥巴马一起编程 C++/Java

    题目来源 美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统.2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏 ...

  5. WPF 用户控件的自定义依赖属性在 MVVM 模式下的使用备忘

    依赖属性相当于扩充了 WPF 标签的原有属性列表,并可以使用 WPF 的绑定功能,可谓是十分方便的:用户控件则相当于代码重用的一种方式:以上几点分开来还是比较好理解的,不过要用到MVVM 模式中,还是 ...

  6. 禁用wordpress模板默认样式

    我们知道wordpress主题比如twentytwenty都会有样式,如果不想使用它们的默认样式怎么处理呢?其实很简单,随ytkah一起来看看吧.进入2020主题的function.php文件,里面有 ...

  7. LeetCode 1034. Coloring A Border

    原题链接在这里:https://leetcode.com/problems/coloring-a-border/ 题目: Given a 2-dimensional grid of integers, ...

  8. 算法——回文(palindrome)

    回文(palindrome):指的是从头读到尾与从尾读到头一模一样的字符串. 分别在C.Java与Python实现回文检测: C: #include <stdio.h> #include ...

  9. django-debug-toolbar调试请求接口

    第一步: pip install django-debug-toolbar 安装完成,往下继续配置. 第二步: 打开项目,找到settings.py 文件.  找到: INSTALLED_APPS-- ...

  10. 虚方法(virtual)\抽象方法(abstract)\接口(interface)的区别

    转自:https://www.cnblogs.com/fantaohaoyou/p/9402657.html 虚方法和抽象方法都可以供派生类重写,它们之间有什么区别呢? 1. 虚方法必须有实现部分,抽 ...