精华内容
下载资源
问答
  • 常用数据交换格式

    千次阅读 2020-01-03 21:37:32
    什么是数据交换格式?、JSON、XML

    什么是数据交换格式?

    在公司的web项目中,客户端和服务器常用的数据交换格式有JSONXML以及模板引擎ftl等。目前大部分公司的项目的服务器响应客户端请求都是返回JSON数据格式。

    一般来说分客户端分为两大类:移动端PC端
    ios安卓,采用的通讯方式是http协议+json的restful风格,也是目前大多数互联网公司的项目采取的方式。

    xml则用的越来越少,因为传输比较耗费资源(宽带),比较重量级。所以一般情况下,银行项目使用http协议+xml居多。

    JSON

    首先我们需要知道什么是JSON?

    JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据简洁清晰的层次结构使得JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率

    简单来说:JSON就是一种轻量级的数据交换格式,结构清晰易于使用,相比XML重量级的数据交换格式更加的好用,所以客户端和服务器端采用JSON的方式进行数据交换格式进行通讯。

    JSON的数据结构如下:

    {
        "fruit": [
            {
                "name": "苹果",
                "address": "烟台",
                "price": "12.9",
                "unit": "kg"
            },
            {
                "name": "香蕉",
                "address": "海南",
                "price": "6.5",
                "unit": "kg"
            }
        ]
    }
    

    json数据格式以两种方式呈现,对象/数组
    "{"开头,"}"结尾,"{}"包裹的为一个json对象,对象里面的值以key value格式存放。"[]"表示json数组,里面装载着若干json对象。

    常用的JSON解析框架
    fastjson(阿里)、gson(谷歌)、jackson(SpringMVC自带)

    例如fastJson的API
    在这里插入图片描述在这里插入图片描述

    XML

    首先我们需要知道XML是什么?

    可扩展标记语言,标准通用标记语言的子集,(Extensible Markup Language,简称XML)。是一种用于标记电子文件使其具有结构性的标记语言。主要作用是用来(描述)存储一些数据,或者说用来做配置文件使用,如spring项目就采用了xml文件。

    使用xml要注意文件头部的结构,需要声明版本号,编码方式。xml中用标签的方式呈现,层层嵌套,可看做树形结构。

    XML数据结构如下:

    <?xml version="1.0" encoding="UTF-8"?>  
    <students>  
        <student id="1">  
            <name>小明</name>  
            <address>深圳</address>  
            <sex>1</sex>  
        </student>
    	... ...    
    </students>  
    
    

    XML的解析方式
    Dom4jSaxPull,一般是这几种。

    dom4j不适合大文件的解析,因为它是一下子将文件加载到内存中,所以有可能出现内存溢出,sax是基于事件来对xml进行解析的,所以他可以解析大文件的xml,也正是因为如此,所以dom4j可以对xml进行灵活的增删改查和导航,而sax没有这么强的灵活性,所以sax经常是用来解析大型xml文件,而要对xml文件进行一些灵活(crud)操作就用dom4j

    公司项目中解析xml我使用的dom4j,使用dom4j主要就是操作Document对象。创建SAXReader对象后通过对象读取文件,获取Document对象之后就很方便了,再获取根节点,即root节点,之后的操作就是一些迭代获取属性/文本之类的操作。

    展开全文
  • 常用数据交换格式

    千次阅读 2018-08-06 14:54:13
    一、什么是数据交换格式 ...二、常用的几种数据交换格式 客户端常用数据交换格式有xml、json、yaml。 1、JSON(JavaScript Object Notation) { "dates": { "date":...

    一、什么是数据交换格式

    在计算机的不同程序之间,或者不同的编程语言之间进行交换数据,也需要一种大家都能听得懂得‘语言’,这就是数据交换格式,它通过文本以特定的形式来进行描述数据。

    二、常用的几种数据交换格式

    客户端常用的数据交换格式有xml、json、yaml。

    1、JSON(JavaScript Object Notation)

    
    {
      "dates": {
        "date": [
          {
            "id": "1",
            "name": "JSON",
            "abb": "JavaScript Object Notation"
          },
          {
            "id": "2",
            "name": "XML",
            "abb": "eXtensible Markup Language"
          },
          {
            "id": "3",
            "name": "YAML",
            "abb": "Yet Another Markup Language"
          }
        ]
      }
    

     JSON是一种轻量级的文本数据交换格式,在语法上与创建JavaScript对象的代码相同,由key|value(键|值)构成。

    JSON的格式:

    a:数据在名称|值对中

    b.数据由逗号分隔

    c.大括号保存对象

    d.中括号保存数组

    JSON的优点:

    a.具有自我描述性,易于阅读编写,也易于机器解析与生成

    b.使用 Javascript语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。 目前非常多的动态(PHP,JSP,.NET)编程语言都支持JSON

    c.非常适用于服务器与JavaScript交互

    使用JSON:

    a.读取JSON字符串

    b.用eval()或者parse()处理字符串

    2.XML(eXtensible Markup Language)

    
    <?xml version="1.0" encoding="UTF-8" ?>
    <dates>
        <date>
            <id>1</id>
            <name>JSON</name>
            <abb>JavaScript Object Notation</abb>
        </date>
        <date>
            <id>2</id>
            <name>XML</name>
            <abb>eXtensible Markup Language</abb>
        </date>
        <date>
            <id>3</id>
            <name>YAML</name>
            <abb>Yet Another Markup Language</abb>
        </date>
    </dates>

    可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。

    XML的格式:

    a.声明:定义XML文件版本以及字符集

    b.根标签:树形结构的根节点

    c.子元素:相对上一级而言,可以自定义,必须有结束标签,对大小写敏感

    d.属性:一个元素可以拥有多个名字不同的属性

    使用XML:

    a.读取XML文档

    b.使用XML DOM循环遍历文档

    c.读取值并存储与变量

    3、YAML(Yet Another Markup Language)

    dates: 
     date: 
      - 
       id: 1
       name: JSON
       abb: "JavaScript Object Notation"
      - 
       id: 2
       name: XML
       abb: "eXtensible Markup Language"
      - 
       id: 3
       name: YAML
       abb: "Yet Another Markup Language"

    YAML是一种直观的能够被电脑识别的的数据序列化格式

    YAML的格式:

    a.结构用缩进表示

    b.连续项目用‘-’表示

    c.key|value用‘:’分隔

    YAML的适用范围:

    a.由于实现简单,解析成本低,特别适合在脚本语言中使用

    b.YAML比较适合做序列化。因为它是宿主语言数据类型直转的。

    c.YAML做配置文件也不错。比如Ruby on Rails的配置就选用的YAML。

    YAML的问题:

    由于兼容性问题,不同语言间的数据流转,建议不要用YAML

    还有一种表达方式是CSV(逗号分隔符),使用表格和分隔符来表示数据的格式,本文就不在多加叙述,有兴趣的读者可以自己去了解一下。本文列出的三者相较而言,JSON与XML使用的更加广泛一点。并且JSON和XML从实现方法比较而言,不难看出,JSON比XML更快更易使用,个人更加推崇JSON一点。当然,具体情况还得具体分析,合理的使用这些数据交换格式,我们才能够写出更加优秀、强大的代码!

     

     

    展开全文
  • 数据交换格式

    千次阅读 2018-07-27 04:30:18
    数据交换格式(报文/参数列表),就是客户端与服务器常用数据交换格式xml,json,html等,常用于面向接口开发。 json:一种轻量级数据交换格式。移动端(安卓、IOS)通讯方式采用http协议+JSON格式 走restful风格。很...

     

    1 数据交换格式

    数据交换格式(报文/参数列表),就是客户端与服务器常用的数据交换格式xml,json,html等,常用于面向接口开发。

    json:一种轻量级数据交换格式。移动端(安卓、IOS)通讯方式采用http协议+JSON格式 走restful风格。很多互联网项目都采用Http协议+JSON。占用宽带小

    xml:可扩展的标记语言,重量级交换格式。因为xml比较重WebService服务采用http+xml格式 银行项目使用比较多。

    1.1 json

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,相比于xml这种数据交换格式来说,因为解析xml比较的复杂,而且需要编写大段的代码,所以客户端和服务器的数据交换格式往往通过JSON来进行交换。

    样例:

    {

        "id": "10",

        "name": "课程",

        "items": [

            {

                "itemId": "20",

                "itemName": 数学"

            },

            {

                "itemId": "21",

                "itemName": "化学"

            }

        ]

    }

    JSON:JavaScript 对象表示法(JavaScript Object Notation)。

    JSON的形式是用大括号“{}”包围起来的项目列表,每一个项目间用逗号(,)分隔,而项目就是用冒号(:)分隔的属性名和属性值。这是典型的字典表示形式,也再次表明javascript里的对象就是字典结构。不管多么复杂的对象,都可以用一句JSON代码来创建并赋值。在JSON中,名称 / 值对包括字段名称(在双引号中),后面写一个冒号,然后是值

    1.1.1 分类

    1、对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,...}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。

    2、数组:数组在js中是中括号“[]”括起来的内容,数据结构为 ["java","javascript","vb",...],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。
    经过对象、数组2种结构就可以组合成复杂的数据结构了。

     

    1.1.2 常用JSON解析框架

    fastjson(阿里)、gson(谷歌)、jackson(SpringMVC自带)

    1.1.2.1 fastjson解析json

    添加依赖
    
    <dependency>
    
    <groupId>com.alibaba</groupId>
    
    <artifactId>fastjson</artifactId>
    
    <version>1.1.43</version>
    
    </dependency>
    
    常用api:
    public static final Object parse(String text); // 把JSON文本parse为JSONObject或者JSONArray 
    public static final JSONObject parseObject(String text); // 把JSON文本parse成JSONObject    
    public static final <T> T parseObject(String text, Class<T> clazz); // 把JSON文本parse为JavaBean 
    public static final JSONArray parseArray(String text); // 把JSON文本parse成JSONArray 
    public static final <T> List<T> parseArray(String text, Class<T> clazz); //把JSON文本parse成JavaBean集合 
    public static final String toJSONString(Object object); // 将JavaBean序列化为JSON文本 
    public static final String toJSONString(Object object, boolean prettyFormat); // 将JavaBean序列化为带格式的JSON文本 
    public static final Object toJSON(Object javaObject); //将JavaBean转换为JSONObject或者JSONArray。
    
    
    例子:
    public class FastJsonDemo {
        //json字符串
        static String json="{\"id\":\"10\",\"name\":\"课程\",\"items\":[{\"itemId\":\"20\",\"itemName\":\"数学\"},{\"itemId\":\"21\",\"itemName\":\"化学\"}]}";
    
        public static void main(String[] args) {
            JSONObject jsonObject = new JSONObject().parseObject(json);
            String id = jsonObject.getString("id");
            System.out.println("id:"+id);
            String name = jsonObject.getString("name");
            System.out.println("name:"+name);
            JSONArray items = jsonObject.getJSONArray("items");
            for (int i = 0; i < items.size(); i++) {
                JSONObject jsonObject1 = items.getJSONObject(i);
                String itemId=jsonObject1.getString("itemId");
                String itemName=jsonObject1.getString("itemName");
                System.out.println("itemId:"+itemId+",itemName:"+itemName);
            }
        }
    }
    
    输出:
    id:10
    name:课程
    itemId:20,itemName:数学
    itemId:21,itemName:化学

    1.1.2.2 Json转对象

    @Data
    class Course{
        private String id;
        private String name;
        private List<Item> items;
    
        @Override
        public String toString() {
            return "Course{" +
                    "id='" + id + '\'' +
                    ", name='" + name + '\'' +
                    ", items=" + items +
                    '}';
        }
    }
    @Data
    class Item{
        private String itemId;
        private String itemName;
    
        @Override
        public String toString() {
            return "Item{" +
                    "itemId='" + itemId + '\'' +
                    ", itemName='" + itemName + '\'' +
                    '}';
        }
    }
    public class FastJsonDemo2 {
        static String json="{\"id\":\"10\",\"name\":\"课程\",\"items\":[{\"itemId\":\"20\",\"itemName\":\"数学\"},{\"itemId\":\"21\",\"itemName\":\"化学\"}]}";
        public static void main(String[] args) {
            Course course = new JSONObject().parseObject(json,Course.class);//json转对象
            System.out.println(course.toString());
        }
    }
    
    输出:
    Course{id='10', name='课程', items=[Item{itemId='20', itemName='数学'}, Item{itemId='21', itemName='化学'}]}

    1.1.2.3 组装Json

    public class Test01 {
        public static void main(String[] args) {
            JSONObject root=new JSONObject();
            root.put("id","20");
            root.put("name","课程");
            JSONArray jsonArray=new JSONArray();
            JSONObject jsonObject=new JSONObject();
            jsonObject.put("itemId","20");
            jsonObject.put("itemName","数学");
            JSONObject jsonObject2=new JSONObject();
            jsonObject2.put("itemId","21");
            jsonObject2.put("itemName","化学");
            jsonArray.add(jsonObject);
            jsonArray.add(jsonObject2);
            root.put("items",jsonArray);
    
            System.out.println(root.toJSONString());
        }
    }
    
    输出:
    {"id":"20","items":[{"itemId":"20","itemName":"数学"},{"itemId":"21","itemName":"化学"}],"name":"课程"}

    1.2 xml

    它是可扩展标记语言(Extensible Markup Language,简称XML),是一种标记语言。XML 全称为可扩展的标记语言。主要用于描述数据和用作配置文件。

    XML 文档在逻辑上主要由一下 5 个部分组成:

    XML 声明:指明所用 XML 的版本、文档的编码、文档的独立性信息

    文档类型声明:指出 XML 文档所用的 DTD

    元素:由开始标签、元素内容和结束标签构成

    注释:以结束,用于对文档中的内容起一个说明作用

    处理指令:通过处理指令来通知其他应用程序来处理非 XML 格式的数据,格式为

    XML 文档的根元素被称为文档元素,它和在其外部出现的处理指令、注释等作为文档实体的子节点,根元素本身和其内部的子元素也是一棵树。

    样例:

    <?xml version="1.0" encoding="UTF-8"?>
    <students>
    	<student1 id="001">
    		<微信公众号>微信1</微信公众号>
    		<学号>20140101</学号>
    		<地址>广州</地址>
    		<座右铭>要么强大,要么听话</座右铭>
    	</student1>
    	<student2 id="002">
    		<新浪微博>微博1</新浪微博>
    		<学号>20140102</学号>
    		<地址>广州</地址>
    		<座右铭>在哭泣中学会坚强</座右铭>
    	</student2>
    </students> 
    </students> 

    1.2.1 XML解析方式

    Dom4j、Sax、Pull

    1.2.2 Dom4j与Sax区别

     dom4j不适合大文件的解析,因为它是一下子将文件加载到内存中,所以有可能出现内存溢出,sax是基于事件来对xml进行解析的,所以他可以解析大文件的xml,也正是因为如此,所以dom4j可以对xml进行灵活的增删改查和导航,而sax没有这么强的灵活性,所以sax经常是用来解析大型xml文件,而要对xml文件进行一些灵活(crud)操作就用dom4j。

    1.2.3使用dom4j解析xml

    解析XML过程是通过获取Document对象,然后继续获取各个节点以及属性等操作,因此获取Document对象是第一步,大体说来,有三种方式:

    1.自己创建Document对象

    Document document = DocumentHelper.createDocument();

    Element root = document.addElement("students");

    其中students是根节点,可以继续添加其他节点等操作。

    2.自己创建Document对象

    // 创建SAXReader对象

    SAXReader reader = new SAXReader();

    // 读取文件 转换成Document

    Document document = reader.read(new File("XXXX.xml"));

    3.读取XML文本内容获取Document对象

    String xmlStr = "<students>......</students>";

    Document document = DocumentHelper.parseText(xmlStr);

    1.2.4 解析xml代码

    添加依赖:
    <dependency>
        <groupId>dom4j</groupId>
        <artifactId>dom4j</artifactId>
        <version>2.0.0</version>
    </dependency>
    xml文件:
    <?xml version="1.0" encoding="UTF-8"?>
    <students>
    	<student1 id="001">
    		<微信公众号>微信1</微信公众号>
    		<学号>20140101</学号>
    		<地址>广州</地址>
    		<座右铭>要么强大,要么听话</座右铭>
    	</student1>
    	<student2 id="002">
    		<新浪微博>微博1</新浪微博>
    		<学号>20140102</学号>
    		<地址>广州</地址>
    		<座右铭>在哭泣中学会坚强</座右铭>
    	</student2>
    </students> 
    
    java代码:
    public class Test003 {
        public static void main(String[] args) throws DocumentException {
            String xmlStr = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
                    "<students>\n" +
                    "\t<student1 id=\"001\">\n" +
                    "\t\t<微信公众号>微信1</微信公众号>\n" +
                    "\t\t<学号>20140101</学号>\n" +
                    "\t\t<地址>广州</地址>\n" +
                    "\t\t<座右铭>要么强大,要么听话</座右铭>\n" +
                    "\t</student1>\n" +
                    "\t<student2 id=\"002\">\n" +
                    "\t\t<新浪微博>微博1</新浪微博>\n" +
                    "\t\t<学号>20140102</学号>\n" +
                    "\t\t<地址>广州</地址>\n" +
                    "\t\t<座右铭>在哭泣中学会坚强</座右铭>\n" +
                    "\t</student2>\n" +
                    "</students> ";
            Document document = DocumentHelper.parseText(xmlStr.replace("\n",""));
            Element rootElement=document.getRootElement();
            getNodes(rootElement);
        }
    
        public static void getNodes(Element rootElement){
            String name=rootElement.getName();
            System.out.println("节点名臣:"+name);
            // 获取属性ID
            List<Attribute> attributes = rootElement.attributes();
            for (Attribute attribute : attributes) {
                System.out.println("属性:" + attribute.getName() + "---" + attribute.getText());
            }
            if (!rootElement.getTextTrim().equals("")) {
                System.out.println(rootElement.getName() + "--" + rootElement.getText());
            }
            // 使用迭代器遍历
            Iterator<Element> elementIterator = rootElement.elementIterator();
            while (elementIterator.hasNext()) {
                Element next = elementIterator.next();
                getNodes(next);
            }
    
    
        }
    }

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    展开全文
  • JSON(JavaScript Object Notation)是一种轻量级轻量级的数据交换格式,并且它独立于编程语言,与XML序列化相比,JSON序列化后产生的数据一般要比XML序列化后数据体积小,所以在Facebook等知名网站中都采用了JSON...
  • 数据交换格式之XML和JSON

    千次阅读 2018-03-07 14:44:49
    学习知识点XML和JSON一、什么是数据交换格式客户端与服务器常用数据交换格式xml、json、html二、数据交换格式应用场景移动端(安卓、IOS)通讯方式采用http协议+JSON格式走restful风格。很多互联网项目都采用Http协议+...

    学习知识点

    XML和JSON

    一、什么是数据交换格式

    客户端与服务器常用数据交换格式xml、json、html

    二、数据交换格式应用场景

    移动端(安卓、IOS)通讯方式采用http协议+JSON格式走restful风格。

    很多互联网项目都采用Http协议+JSON

    因为xml比较重WebService服务采用http+xml格式银行项目使用比较多

    三、JSON简单使用

     3.1、什么是JSON?

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,相比于xml这种数据交换格式来说,因为解析xml比较的复杂,而且需要编写大段的代码,所以客户端和服务器的数据交换格式往往通过JSON来进行交换。

    样例:

        "sites": [

            {

                "name": "codersWang",

                "url":"http://blog.csdn.net/qazzwx?viewmode=contents"

            },

            {

                "name": "codersWang",

                "url":"http://blog.csdn.net/qazzwx?viewmode=contents"

            }

        ]

    }

     注意:{}包裹的是一个对象 JSONObject  []包裹的是一个数据JSONArray

    3.2 常用的JSON解析框架

    fastjson(阿里)、gson(谷歌)、jackson(SpringMVC自带)

    3.3、使用JSON(fastjson解析JSON)

    3.3.1.添加jarfastjson-1.1.43 或引入maven依赖

    <dependency>

    <groupId>com.alibaba</groupId>

    <artifactId>fastjson</artifactId>

    <version>1.1.43</version>

    </dependency>

    2.使用fastjson api

    public static final Objectparse(String text); // JSON文本parseJSONObject或者JSONArray 
    public static final JSONObjectparseObject(String text) // JSON文本parseJSONObject    
    public static final <T>T parseObject(String text, Class<T> clazz); // JSON文本parseJavaBean 
    public static final JSONArrayparseArray(String text); // JSON文本parseJSONArray 
    public static final <T>List<T> parseArray(String text, Class<T> clazz); //JSON文本parseJavaBean集合 
    public static final StringtoJSONString(Object object); // JavaBean序列化为JSON文本 
    public static final StringtoJSONString(Object object, boolean prettyFormat); // JavaBean序列化为带格式的JSON文本 
    public static final ObjecttoJSON(Object javaObject); JavaBean转换为JSONObject或者JSONArray

    3.3.3、JSON解析

    3.3.4、组装JSON

    、XML简单使用

    4.1、什么是XML

    它是可扩展标记语言(Extensible Markup Language,简称XML),是一种标记语言。

    XML 全称为可扩展的标记语言。主要用于描述数据和用作配置文件。

    XML 文档在逻辑上主要由一下 5 个部分组成:

    XML 声明:指明所用 XML 的版本、文档的编码、文档的独立性信息

    文档类型声明:指出 XML 文档所用的 DTD

    元素:由开始标签、元素内容和结束标签构成

    注释:以结束,用于对文档中的内容起一个说明作用

    处理指令:通过处理指令来通知其他应用程序来处理非 XML 格式的数据,格式为XML 文档的根元素被称为文档元素,它和在其外部出现的处理指令、注释等作为文档实体的子节点,根元素本身和其内部的子元素也是一棵树。

    4.2、XML样例:

    <?xml version="1.0" encoding="UTF-8"?>  
    <students>  
        <student1 id="001">  
            <微信公众号>qazzwx</微信公众号>  
            <学号>20140101</学号>  
            <地址>北京海淀区</地址>  
            <座右铭>要么强大,要么听话</座右铭>  
        </student1>  
        <student2 id="002">  
            <新浪微博>coderWang</新浪微博>  
            <学号>20140102</学号>  
            <地址>北京朝阳区</地址>  
            <座右铭>在哭泣中学会坚强</座右铭>  
        </student2>  

    </students> 

    <?xml version="1.0"encoding="UTF-8"?>作用

    xml文件头部要写的话,说明了xml的版本和编码,utf-8一般是网络传输用的编码

    4.3、XML解析方式

    Dom4j、Sax、Pull

    4.4、Dom4j于Sax区别

     dom4j不适合大文件的解析,因为它是一下子将文件加载到内存中,所以有可能出现内存溢出,sax是基于事件来对xml进行解析的,所以他可以解析大文件的xml,也正是因为如此,所以dom4j可以对xml进行灵活的增删改查和导航,而sax没有这么强的灵活性,所以sax经常是用来解析大型xml文件,而要对xml文件进行一些灵活(crud)操作就用dom4j。

    4.5、使用Dom4j解析

    解析XML过程是通过获取Document对象,然后继续获取各个节点以及属性等操作,因此获取Document对象是第一步,大体说来,有三种方式:

    4.5.1、自己创建Document对象

    Documentdocument = DocumentHelper.createDocument();

    Element root = document.addElement("students");

    其中students是根节点,可以继续添加其他节点等操作。

    4.5.2、自己创建Document对象

    // 创建SAXReader对象

    SAXReaderreader = new SAXReader();

    // 读取文件转换成Document

    Documentdocument = reader.read(new File("XXXX.xml"));

    4.5.3、读取XML文本内容获取Document对象

    String xmlStr = "<students>......</students>";

    Documentdocument = DocumentHelper.parseText(xmlStr);

    使用第二种方法读取案列:


    4.6、XML与JSON区别

    Xml是重量级数据交换格式,占宽带比较大。

    JSON是轻量级交换格式,xml占宽带小。

    所有很多互联网公司都会使用json作为数据交换格式

    很多银行项目,大多数还是在使用xml。

    展开全文
  • Protobuf数据交换格式

    万次阅读 2020-01-08 00:28:30
    ProtoBuf(Google Protocol Buffer)是由google公司用于数据交换的序列结构化数据格式,具有跨平台、跨语言、可扩展特性,类型于常用的XML及JSON, 但具有更小的传输体积、更高的编码、解码能力,特别适合于数据存储...
  • 常用数据格式:.pdf

    2021-04-27 20:35:15
    程序员需要了解常用数据格式,无论是配置文件,序列化,数据请求还是消息交换中都会用到。其最终的目的是为了更便于计算机和人类阅读而被发明出来。 如常见的xml / json / cson / protobuf / properties / yaml /...
  • 物联网专用数据交换格式CBOR

    万次阅读 2019-07-20 17:32:55
    本文将介绍物联网领域的JSON格式——CBOR,CBOR是专门为受限制物联网终端设计的数据交换格式,该格式轻量间接,可以简单理解为二进制形式JSON格式。CBOR格式可以与COAP协议组合使用,犹如HTTP+JSON;另外,CBOR也是...
  • 其他公司或应用软件能够通过internet来访问并使用这项在线服务二、关键的技术和规则1、WebService时,主要用到以下几个关键的技术和规则:a)、XML:描述数据的标准方法b)、SOAP:表示信息交换的协议(Simple Object ...
  • 数据交换之前后端数据格式转换(一)

    千次阅读 2016-10-18 00:05:52
    前后端之间数据交换常用json格式,调用webService进行数据交换xml占了许多。所以今天要记录的是我们通过传入的json或者xml 转换为对象,进行一系列数据计算,再拼接成json或者xml。 这里我们使用fastJson进行解析.第...
  • LIS常用数据交换协议

    千次阅读 2017-03-06 18:12:03
    仪器厂商自定义的数据交换协议,通用性差。 1、ASTM协议介绍 2、ASTM 美国材料与试验协会(American Society for Testing and Materials, ASTM)ASTM (American Society for Testing and Materials) 是美国最重要...
  • 常用数据交互格式

    千次阅读 2018-09-14 11:10:38
    同理,在计算机的不同程序之间,或者不同的编程语言之间进行交换数据,也需要一种大家都能听得懂得‘语言’,这就是数据交换格式,经常接触的就是json,除了json还有xml、yaml等等。 一、JSON(JavaScript Object ...
  • C语言数据交换

    千次阅读 2019-12-22 23:20:25
    方法解释:这种方法不太常用,原理是把原来的int类型的a的值拆分成高16位和低16位,相当于多了16位的暂存空间可以周转,缺点是如果a或者b超过了16位,这种方法就会出错,此方法较复杂且容易出错,因此不建议大家使用...
  • 数据交换过程详解

    千次阅读 2020-06-11 08:31:00
    转载本文需注明出处:微信公众号EAWorld,违者必究。前言:本文主要介绍数据交换过程中常用数据交换方法和方式以及数据交换在新技术下所面对的“挑战”,方便大家深入理解数据交换过程。普元...
  • 当前较为流行的数据交换格式

    千次阅读 2017-04-19 18:54:22
    简要概述当前最为流行的三种数据交换格式(JSON、XML、YAML)。
  • 点云数据文件常用格式

    千次阅读 2020-08-18 10:32:45
    点云数据文件常用格式 文件类型汇总# OFF - Object File Format PLY - Polygon File Format also known as the Stanford Triangle Format PTS - Laser scan data format PTX - ASCII based interchange format...
  • 摘要:国土资源信大量的是空间地理信息,由于现买中各GIS系统存储、管理GIS数据的格式各不相同,空间数据交换标准是实现GIS数据共享的必要途径,国土资源部制定了VCT矢量数据交换格式来实现各类国土资源空间信息的...
  • 入门学习Linux常用必会60个命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    因为Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至在有的系统中会损坏硬件设备(硬盘)。在系统关机前使用 shutdown命令,系统管理员会通知所有...
  • 常用GIS数据格式

    千次阅读 2013-12-09 20:07:13
    GIS数据不仅表达空间实体(真实体或者虚拟实体)的位置和几何形状,同时也记录空间实体对应的属性,这就决定了GIS数据源包含有图形数据(又称空间数据)和属性数据两部分。...比较常用的GIS数据格式有: Mapifo(*.TA
  • 三维数据格式

    千次阅读 2018-12-12 09:44:23
    先看一下threejs官网提供的三维模型加载器如...基本所有的三维软件都支持导出.stl格式三维模型,stl三维模型不包含材质信息,你可以简单地把stl文件理解为几何体对象Geometry,本节课素材box.STL是一个立方体, 用记...
  • 网络程序间数据交换格式——前言

    千次阅读 2013-01-13 11:10:23
    书写网络程序避免不了网络之间的通信,进程间的通信涉及数据交换格式,目前常用的通信格式有protocol buffer(google大牛的一套库)、json、xml、tlv等,当然也可以直接copy内存,个人感觉这是一种很拙劣、很暴力的...
  • 软件开发中的几种数据交换协议

    千次阅读 2017-10-19 16:43:00
    数据交换"这个概念,本文所说的"数据交换" 是指在计算机网络中,一个系统把数据传递给另外一个系统。这非常类似于一个人要告诉另外一个人一件事情。 当一个人要把一件事情告诉另外一个人的时候,...
  • Java基础知识面试题(2020最新版)

    万次阅读 多人点赞 2020-02-19 12:11:27
    文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些...Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...
  • Author:kevinelstri DateTime:2017/3/13译文...1、什么是文件格式? 文件格式是在文件中存储信息的一种标准方法。首先,文件格式指定文件是一个二进制或ASCII文件。其次,文件展示了文件的组织形式。例如,逗号分隔
  • *.dxf是Autodesk公司开发的用于AutoCAD与其它软件之间进行CAD数据交换的CAD数据文件格式。DXF是一种 开放的矢量数据格式 ,可以分为两类:ASCII格式和二进制格式;ASCII具有可读性好,但占有空间较大;二进制格式...
  • 数据传输三种格式

    万次阅读 2018-09-06 10:27:06
    一般在使用接口传输数据时通常会使用三种数据格式:...JSON是一种轻量级的文本数据交换格式,在语法上与创建JavaScript对象的代码相同,由key|value(键|值)构成。 JSON的优点是: a.具有自我描述性,易于阅读...
  • IOS 之 网络通信数据交换格式

    千次阅读 2013-12-17 11:09:21
    在学习网络通信技术之前先来学习一下数据交换格式. 在Web Service的网络通信中有三种数据交换格式:  1.纯文本格式  纯文本的格式是一种简单的无格式的数据交换方式. 2.XML格式  XML是一种自描述的数据交换格式. 3...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 138,715
精华内容 55,486
关键字:

常用的数据交换格式