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

    千次阅读 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一点。当然,具体情况还得具体分析,合理的使用这些数据交换格式,我们才能够写出更加优秀、强大的代码!

     

     

    展开全文
  • 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) 是美国最重要...
    一、私有交换协议
    仪器厂商自定义的数据交换协议,通用性差。
    1、ASTM协议介绍
    2、ASTM
    美国材料与试验协会(American Society for Testing and Materials, ASTM)ASTM (American Society for Testing and Materials) 是美国最重要的标准化组织。 ASTM 标准是被世界范围内应用于临床的标准实验室仪器与主机系统,如LIS和 LIMS(实验室信息管理系统)的通信。
    ASTM 定义了实验室仪器和电脑系统之间的两个标准通信:
    E 1381 – 95  Low-Level Protocol: to Transfer Messages Between Clinical Laboratory Instruments and Computer Systems.
    E 1394 – 95  High-Level Protocol: Transferring Information Between Clinical Instruments and Computer Systems: E 1394 usually uses E 1381 protocol for low-level communication.
    E 1381 – 97 Low-Level Protocol: to Transfer Messages Between Clinical Laboratory Instruments and Computer Systems.
    E 1394  – 02 High-Level Protocol: Transferring Information Between Clinical Instruments and Computer Systems: E 1394 usually uses E 1381 protocol for low-level communication.

    3、连接方式
    1)    物理链路
    ASTM协议要求单工双向通信链路,协议包含数据链路层和表示层。其中E1381-95规定了采用串口点对点方式的连接方式,由于USB和802.3x等链路的采用,理论上只要可以进行双向通信,字节解析都可以实现本ASTM的传输。
    2)    串口链路连接方式
    3)    低层协议要求
    数据链路层协议ASTME1381-02,ASTEME1381-95。
    数据链路层的功能,包括通信的建立和释放,数据同步,顺序传输控制,错误检测和恢复。
    通信流程包括:建立连接(establishment Phase)、数据传输(Transfer Phase)、结束连接(Termination Phase)三个流程。
    4)    高层协议表示层
    表示层协议ASTME1394-95,ASTEME1394-97。在给定时间内在设备和主机间发送的封闭串数据传输称为信息。信息由多种类型的记录层组成:

    4、ASTM的发展
    已被NCCLS(美国临床实验室标准委员会) /CLSI(临床实验室标准化协会, 2005 年)相关标准取代,分别是LIS-1A和LIS-2A。
    二、NCCL
    CCLS(美国临床实验室标准委员会),(LIS-1A–LIS-9A)
    三、HL7 协议
    HL7(Health  Level Seven) 是80年代末发展起来的基于国际标准化组织ISO所公布的网络开放系统互连模型OSI第七层(应用层)的医学信息交换协议
    1987年发布V1.0,是美国HL7组织为医疗领域内不同应用系统之间进行电子数据交换而研究制定的一个电子数据交换标准 。
    • 欧、美、日大多数实验室及其他诊断服务部门都倾向采用HL7等卫生信息传输标准。
    • 目前国内应用还很少。
    四、ISO15189
    对医学实验室(medical laboratory)或临床实验室(clinical laboratory)定义为:以诊断、预防、治疗人体疾病或评估人体健康为目的,对取自人体的标本进行生物学、微生物学、免疫学、化学、免疫血液学、血液学、生物物理学、细胞学、病理学或其它检验的实验室,它可以对所有与实验研究相关的方面提供咨询服务,包括对检验结果的解释和对进一步的检验提供建议。


    五、DICOM
    DICOM(Digital Imaging and Communications in Medicine)即医学数字成像和通信,是医学图像和相关信息的国际标准(ISO 12052)。它定义了质量能满足临床需要的可用于数据交换的医学图像格式。
    DICOM被广泛应用于放射医疗,心血管成像以及放射诊疗诊断设备(X射线,CT,核磁共振,超声等),并且在眼科和牙科等其它医学领域得到越来越深入广泛的应用。在数以万计的在用医学成像设备中,DICOM是部署最为广泛的医疗信息标准之一。当前大约有百亿级符合DICOM标准的医学图像用于临床使用。
    自 从1985年DICOM标准第一版发布以来,DICOM给放射学实践带来了革命性的改变,X光胶片被全数字化的工作流程所代替。就像Internet成为 信息传播应用的全新平台,DICOM使“改变临床医学面貌”的高级医学图像应用成为可能。比如在急诊科中,心脏负荷测试,乳腺癌的检查,DICOM为医生 和病人服务,是医学成像有效工作的标准。
    展开全文
  • 数据通信网的交换方式

    千次阅读 2017-09-08 21:08:23
    数据通信网的交换方式 对于计算机和终端之间的通信,交换是一个重要的问题。如果我们想使用任何遥远的计算机 ,若没有交换机,只能采用点对点的通信。为避免建立多条点对点的信道,就必须使计算机 和某种形式的...

    数据通信网的交换方式
    对于计算机和终端之间的通信,交换是一个重要的问题。如果我们想使用任何遥远的计算机 ,若没有交换机,只能采用点对点的通信。为避免建立多条点对点的信道,就必须使计算机 和某种形式的交换设备相连。交换又称转接,这种交换通过某些交换中心将数据进行集中和转送,可以大大节省通信线路。在当前的数据通信网中,有三种交换方式,那就是电路交换 、报文交换和分组交换。一个通信网的有效性、可靠性和经济性直接受网中所采用的交换方式的影响。

    一、电路交换
    在数据通信网发展初期,人们根据电话交换原理,发展了电路交换方式。当用户要发信息时 ,由源交换机根据信息要到达的目的地址,把线路接到那个目的交换机。这个过程称为线路 接续,是由所谓的联络信号经存储转发方式完成的,即根据用户号码或地址(被叫),经局间 中继线传送给被叫交换局并转被叫用户。线路接通后,就形成了一条端对端(用户终端和被 叫用终端之间)的信息通路,在这条通路上双方即可进行通信。通信完毕,由通信双方的某 一方,向自己所属的交换机发出拆除线路的要求,交换机收到此信号后就将此线路拆除,以 供别的用户呼叫使用。

     由于电路交换的接续路径是采用物理连接的,在传输电路接续后,控制电路就与信息传输 无关,所以电路交换方式的主要优点是:

     ①信息传输延迟小,就给定的接续路由来说,传输延迟是固定不变的;

     ②信息以数字信号的形式在数据信道上进行“透明”传输,交换机对用户的数据信息不存储、处理,交换机在处理方面的开销比较小,对用户的数据信息不用附加控制信息,使信息的传送效率较高

    电路交换的主要缺点是:

      1.电路接续时间长
    
      2.线路的利用率低
    
      3.限不同速率、不同代码格式、不同控制方式的相互直通
    

    二、报文交换

     60年代和70年代,在数据通信中普遍采用报文交换方式,目前这种技术仍普遍应用在某些领 域(如电子信箱等)。为了获得较好的信道利用率,出现了存储—转发的想法,这种交换方式 就是报文交换。它的基本原理是用户之间进行数据传输,主叫用户不需要先建立呼叫,而先 进入本地交换机存储器,等到连接该交换机的中继线空闲时,再根据确定的路由转发到目的 交换机。由于每份报文的头部都含有被寻址用户的完整地址,所以每条路由不是固定分配给 某一个用户,而是由多个用户进行统计复用。
    

     报文交换中,若报文较长,需要较大容量的存储器,若将报文放到外存储器中去时,会造成 响应时间过长,增加了网路延迟时间。另一方面报文交换通信线路的使用效率仍不高。

    优点:

     1.不同的终端接口之间可以相互直通
    
     2.无呼损
    
     3.利用动态的复用技术,线路的利用率较高。
    

    缺点:

     1.传输时延大,而且变化的范围比较大
    
     2.利用“存储-转发”,所以要求交换系统有较高的处理速度和大的存储能力
    
     3.实时性较差。
    

    三、分组交换

     交换技术的发展历史看,数据交换经历了电路交换、报文交换、分组交换和综合业务数字交换的发展过程。分组交换实质上是在“存储—转发”基础上发展起来的。它兼有电路交换和报文交换的优点。分组交换在线路上采用动态复用技术传送按一定长度分割为许多小段的数据—分组。每个分组标识后,在一条物理线路上采用动态复用的技术,同时传送多个数据分组。把来自用户发端的数据暂存在交换机的存储器内,接着在网内转发。到达接收端,再去掉分组头将各数据字段按顺序重新装配成完整的报文。

    优点:

     1.可以对不同的接口终端进行匹配
    
     2.网络轻载情况下,传输时延较小,且比较稳定
    
     3.线路利用率高
    
     4.可靠性高
    
     5.经济效益好
    

    缺点:

     1.网络系统附加了大量的控制信息,对于报文较长的信息传输率低
    
      2.技术实现复杂
    

    原地址:http://fangzheng1105.blog.163.com/blog/static/51535953201051294531825/

    展开全文
  • 系统间数据交换的5种方式

    千次阅读 2018-04-12 19:58:00
    工作中常会遇到系统对接,交换数据,将用过的对接数据交换方式简要回顾一下。 一,原始的方式,直接文件交换 通过定义csv,xml,json等文件,一方支持数据导出,另一方支持数据导入。最开始是人手工完成,做的好点的...
  • 数据交换过程详解

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

    万次阅读 2019-02-18 19:56:37
    json是一种轻量级的数据交换格式,相比与xml这种数据交换格式来说,因为解析xml比较的复杂,而且需要编写大段的代码,所有客户端和服务器的数据交换格式往往通过json来进行交换。 json有两种数据结构 json简答说...
  • js对数据常用处理方式

    万次阅读 2018-07-06 14:51:46
    说明:本文并没有对js处理数据进行深究,本人也不是专业前端人员,只是碰到js处理数据时,对当时的处理数据方式进行记录和总结,后续工作中碰到值得记录的会持续更新。 1、字符串转换成对象 代码: var obj =...
  • java中两数据交换四种方式

    千次阅读 2012-10-03 22:23:51
    public class DemoTest { public static void main(String... // 方式1: 额外定变量法 (常用型) int x1 = 2147483647; int y1 = 2147483646; System.out.println("方式1交换之前:x1= " + x1 + ", y1= " + y1); i
  • Protobuf数据交换格式

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

    万次阅读 2014-05-19 23:21:45
    一组MATLAB和 C++数据交换类的设计 南京航空航天大学 san email : visualsan@yahoo.cn (源代码:http://blog.csdn.net/visualsan/archive/2011/03/05/6226205.aspx) C++数据交换类的设计" title="一组...
  • CPU与外设交换数据方式及其特点

    千次阅读 2018-03-04 15:00:01
     (2)中断传送方式:当外设作好传送准备后,主动向CPU请求中断,CPU响应中断后在中断处理程序中与外设交换数据。若外设未准备好,CPU可以执行其他程序,从而提高了CPU的利用率。 (3)DMA传送方...
  • C++ 四种数据交换的函数

    千次阅读 2018-11-28 18:32:57
    C++ 四种数据交换的函数 //使用异或操作实现原位数据交换 //只对整数有效!! //引用+异或 方法1 void myswap(int &amp;amp;amp;amp;a, int &amp;amp;amp;amp;b){ a = a^b; b = a^b; a = a^b; } //原位...
  • 在.NET使用JSON作为数据交换格式

    万次阅读 热门讨论 2011-03-16 21:04:00
    我们知道在.NET中我们有多种对象...并且它独立于编程语言,与XML序列化相比,JSON序列化后产生的数据一般要比XML序列化后数据体积小,所以在Facebook等知名网站中都采用了JSON作为数据交换方式。在.NET中有三种常用的JS
  • 数据交换之前后端数据格式转换(一)

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

    万次阅读 2019-07-20 17:32:55
    本文将介绍物联网领域的JSON格式——CBOR,CBOR是专门为受限制物联网终端设计的数据交换格式,该格式轻量间接,可以简单理解为二进制形式JSON格式。CBOR格式可以与COAP协议组合使用,犹如HTTP+JSON;另外,CBOR也是...
  • 数据交换格式之XML和JSON

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

    千次阅读 2014-05-26 21:09:36
    两个数据交换在编程中很常用
  • 常用数据结构与常用算法,

    万次阅读 多人点赞 2018-08-08 20:32:54
    1. 常见数据结构 人们进行程序设计时通常关注两个重要问题,一是如何将待处理的数据存储到计算机内存中,即数据表示;二是设计算法操作这些数据,即数据处理。数据表示的本质是数据结构设计,数据处理的本质是算法...
  • 数据交换工具Kettle

    万次阅读 热门讨论 2008-05-29 16:43:00
    网上搜集了一些关于开源数据交换工具Kattle的文章,特收藏如下:文章一:ETL和Kettle简介ETL即数据抽取(Extract)、转换(Transform)、装载(Load)的过程。它是构建数据仓库的重要环节。数据仓库是面向主题的、...
  • EDI电子数据交换

    千次阅读 2009-12-18 14:01:00
    电子数据交换二.EDI系统的工作过程三.水处理 EDI 四. 32位CPU变址寄存器EDI 一.电子数据交换 何为EDI,EDI是英文Electronic Data Interchange的缩写,中文可译为“电子数据交换”。它是一种在公司之间传输订单、...
  • 第一章、数据交换平台的一些基本概念1.1 数据交换与交换平台1.2 什么是物理隔离? 第零章、前言:为什么?做什么?怎么做? 最近带队做了公司的一个项目,叫数据交换平台,旨在物理隔离的情况下对多端业务系统进行...
  • VC++常用数据类型

    万次阅读 2008-12-31 12:20:00
     VC常用数据类型列表二. 常用数据类型转化2.1数学类型变量与字符串相互转换2.2 CString及string,char *与其他数据类型的转换和操作●CString,string,char*的综合比较●数学类型与CString相互转化●CString与char*...
  • 常用数据结构介绍

    万次阅读 2017-08-08 16:03:02
    常用数据结构介绍 0.数组:顺序存储,随机访问  链表:链表存储,顺序访问 1.栈 2.队列 3.串 4.树 1)二叉树 2)遍历二叉树: 前序(先中间,再左边,后右边) 中序(先左边,再中间,后右边) 后序(先左边...
  • C++常用数据结构总结

    万次阅读 多人点赞 2018-10-07 19:50:29
    空间排列方式只有线性和链式两种方式,链式是通过记录每一个数据的地址来实现查找下一位数据的。而每一个容器所具有的特性就决定了它所适用的情况,总的来看容器常用的无非是增删改查操作,下面将从适用场景、常用...
  • 摘要:国土资源信大量的是空间地理信息,由于现买中各GIS系统存储、管理GIS数据的格式各不相同,空间数据交换标准是实现GIS数据共享的必要途径,国土资源部制定了VCT矢量数据交换格式来实现各类国土资源空间信息的...
  • 数据交换的三种技术

    千次阅读 2019-09-18 05:30:46
    1.电路交换技术 ...公众电话网(PSTN网)和移动网(包括GSM网和CDMA网)采用的都是电路交换技术,它的基本特点是采用面向连接的方式,在双方进行通信之前,需要为通信双方分配一条具有固定带宽的通信电路...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 249,138
精华内容 99,655
关键字:

常用数据交换方式