反射 XML和JSON
反射:
反射概念:在运行状态中,对于任意一个类都能知道这个类的所有方法和属性;对于任意一个对象,都能调用它的任意一个方法和属性,这种动态获取信息以及动态调用对象的方法的功能称为反射机制。
java反射相关的类主要包括
Class 类型
Constructor 构造方法
Method 方法
Field 属性
...都在java.lang.reflect包中
Constructor构造方法和Method方法的区别
相同处;都能通过get方法获取方法名getName、方法的参数类型getParameterTypes
不同处:Constructor还可以创建实例newinstance
Method还可以获取方法的返回值类型getReturnType、通过invoke调用任意一个对象的具体方法
XML的概念
XML指可扩展标记语言、主要作用是传输数据并不是显示数据、
XML文档必须有根元素、
节点元素必须有对应的关闭标签、
XML标签对大小写敏感、
XML元素必须被正确的嵌套、
XML属性值必须加引号
DOM和SAX两种解析模式
DOM:Document Object Model
文档对象模型,将整个文档加载进内存并分析整体结构,根据节点元素之间的父子关系完成整个文档上所有节点的遍历
优势:符合XML整体数据结构逻辑定义,可以对文档结构进行修改
劣势:需要完整的加载文档,效率低,对于大型文档不适用
SAX:Simple API for XML
针对XML文档的事件驱动解析引擎,逐行对文档进行分析,遇到文档的特定组成部分后回调预先定义的事件回调
优势:无需完整加载文档,一边加载一边逐条解析、不会对程序的运行时内存造成影响
劣势;不符合XML文档的整体数据结构,只能用来解析遍历,不能修改
JSON概念
是更轻量级的文本数据交换格式、类似XML,但是比XML更小更快更易解析
JSON和XML的区别
相同处:
都是纯文本
具有自我描述性(人类可读)
具有层级结构(值中存在值)
不同处
没有结束标签
更短、更简洁
读写的速度更快
能使用内建的JacaScript eval()方法解析
使用数组
不使用保留字
JSON返回示例;
{
"resultcode":"200",
"reason":"Return Successd!",
"result":
{
"area":"江苏省苏州市",
"location":"电信"
}
}
XML返回示例:
<?xml version="1.0" encoding="utf-8"?>
<root>
<resultcode>200</resultcode>
<reason>Return Successd</reason>
<result>
<area>江苏省苏州市</area>
<location>电信</location>
</result>
</root>
反射 XML和JSON的更多相关文章
- WebApi接口 - 响应输出xml和json
格式化数据这东西,主要看需要的运用场景,今天和大家分享的是webapi格式化数据,这里面的例子主要是输出json和xml的格式数据,测试用例很接近实际常用情况:希望大家喜欢,也希望各位多多扫码支持和点 ...
- 【.net 深呼吸】聊聊WCF服务返回XML或JSON格式数据
有时候,为了让数据可以“跨国经营”,尤其是HTTP Web有关的东东,会将数据内容以 XML 或 JSON 的格式返回,这样一来,不管客户端平台是四大文明古国,还是处于蒙昧时代的原始部落,都可以使用这 ...
- C# XML转JSON,不引用第三方JSON.NET类库
应用场景:需要调用第三方接口(返回XML)数据,然后供自己多个系统使用(涉及跨域,使用JSONP) 代理:调用接口(把XML转换为JSONP解决跨域问题) B/S应用系统:调用代理返回的数据进行UI显 ...
- SQL2008使用json.net实现XML与JSON互转
借助CLR,首先实现字符串的互转,然后使用存储过程实现JSON2table public class JsonFunction { /// <summary> ...
- [Network] HTML、XML和JSON学习汇总
写在前面:楼主也是刚刚接触这方面的知识,之前完全是零基础,后来经朋友推荐了几个不错的博文,看完以后豁然开朗.但是此博文更加偏重于基础知识介绍(其实更深的楼主也还不了解,这方面的大神请绕道),只是分享个 ...
- XML和JSON数据格式对比
概念 XML 扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语 ...
- xml和json的区别
本文转自SanMaoSpace的博客 链接地址如下:http://www.cnblogs.com/SanMaoSpace/p/3139186.html 1.定义介绍 (1).XML定义扩展标记语言 ( ...
- C#中XML和json互相转换
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Xm ...
- 数据解析(XML和JSON数据结构)
一 解析 二 XML数据结构 三 JSON 数据结构 一 解析 1 定义: 从事先规定好的格式中提取数据 解析的前提:提前约定好格式,数据提供方按照格式提供数据.数据获取方则按照 ...
随机推荐
- Java 中的日志
参考:https://www.cnblogs.com/gavanwanggw/p/7305218.html 日志框架: 提供日志调用的接口,实际的日志输出托付给日志系统实现 JCL:比较流行的日志框架 ...
- Flipping an Image
Given a binary matrix A, we want to flip the image horizontally, then invert it, and return the resu ...
- idea激活方式
idea破解方法:转自https://note.youdao.com/ynoteshare1/index.html?id=d0f3fb42bfa1bb65a33115a1b6140f5f&ty ...
- Ubuntu---grep
摘要:我们已经学过正则表达式了,所以现在开始学习 grep 也是水到渠成的事情. 简介:grep 是 Linux 中最常用的“文本处理工具”之一,grep 与 sed.awk 合称为 Linux 中的 ...
- poj2777(线段树)
题目链接:https://vjudge.net/problem/POJ-2777 题意:有L块连续的板子,每块板子最多染一种颜色,有T种(<=30)颜色,刚开始将所有板子染成颜色1,O次操作(包 ...
- ios UITableView的style的区别与用法,以及分割线的显示与隐藏
******************tableview style****************************************************** // tableview ...
- vue中具名插槽的使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Linux进程的实际用户ID和有效用户ID
转自:https://blog.csdn.net/hulifangjiayou/article/details/47400943 在Linux中,每个文件都有其所属的用户和用户组,默认情况下是文件的创 ...
- Samtools在Linux上非root权限的安装
第一次在Linux上不用root权限安装软件,查看了很多博客,并实践安装成功.大致总结了一下samtools的安装过程,仅供大家参考,如有不对的地方,欢迎指正~ samtools安装过程中依赖于lzm ...
- Python-docx 读取word.docx内容
第一次写博客,也不知道要写点儿什么好,所以就把我在学习Python的过程中遇到的问题记录下来,以便之后查看,本人小白,写的不好,如有错误,还请大家批评指正! 中文编码问题总是让人头疼,想要用Pytho ...