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. OPATCH在线补丁

    如果补丁中有online目录就是在线补丁,不需要数据库停机,在线的又分集群和非集群,如下 查看readme可以得知在线补丁打法 $ cat README.txt Oracle Database 11g ...

  2. K8S 上搭建 Redis

    根据需求搭建一个不需要数据持久化,需要密码登录的 Redis mkdir /iba/qa_ibaboss_elk -p cd /iba/qa_ibaboss_elk # 创建一个专用的 namespa ...

  3. MySQL修炼之路四

    1. 外键(foreign key) 1. 定义:让当前表字段的值在另一个表的范围内选择 2. 语法 foreign key(参考字段名) references 主表(被参考字段名) on delet ...

  4. Linux CentOS 6.5 ifconfig查询不到ip简单解决方法

    最近有小伙伴表示在虚拟机中安装CentOS之后使用ifconfig以及ip addr指令无法查询到ip地址, 在此笔者提供一个简单有效的方法; 1. 切换为root用户登录 su root 2.进入配 ...

  5. MySQL多实例安装、配置、启动(四)

    一.规划信息 系统信息: cat /etc/redhat-release CentOS Linux release (Core) # uname -r -.el7.x86_64 数据库规划 PORT: ...

  6. 爬虫篇-python爬虫中多线程的使用

    queue介绍 queue是python的标准库,俗称队列.可以直接import引用,在python2.x中,模块名为Queue.python3直接queue即可 在python中,多个线程之间的数据 ...

  7. volatile 关键字 和 i++ 原子性

    package com.mozq.multithread; /** * 深入理解Java虚拟机 volatile 关键字 和 i++ 原子性. */ public class VolatileTest ...

  8. reduce方法和reduceRight方法

    什么是reduce方法? 先来看一下用用法: var arr = [1, 2, 3, 4] var sum = (a, b) => a + b arr.reduce(sum, 0) 由上面代码可 ...

  9. mysql where/having

    select * from t1 where id<5;select * from t1 where id<5; where 从t1中筛选内容 而having从*中筛选内容

  10. GoldenDict词典配置

    词典下载网址:http://download.huzheng.org/ 将下载后的词典解压放入 /usr/share/goldendict/dicts 下 程序设置里扫描文件夹,搜索出词典信息 设置自 ...