Atitit 大json文件的结构化查看解决方案,高性能的jsonview attilax总结.docx
Atitit 大json文件的结构化查看解决方案,高性能的jsonview attilax总结.docx
1.2. 实现key与value类型的。。一直分析到非 jsonobject jsonarray位置。。1
1.3. 现存问题 fastjson使用string格式的内容,导致文件内容大小依然存在上限。。1
选型了很多jsonviewer,只能对小数据量的文件生效。。一旦涉及到9M左右的json文件,就都统统歇菜了。。
只好自己动手写jsonview 工具。。
D:\0workspace\atiplat_restapi\src\com\attilax\json\JsonViewBigFile.java
1.1. 实现目标:
过多的 array 只象征性的截取2个分析即可。。
抽取json骨架。。
1.2. 实现key与value类型的。。一直分析到非 jsonobject jsonarray位置。。
1.3. 现存问题 fastjson使用string格式的内容,导致文件内容大小依然存在上限。。
不过上限应该在 50M左右了。。
1.4. 效果


{
"code": "java.lang.String",
"msg": "java.lang.String",
"result": {
"deptMembers": [{
"deptId": "java.lang.String",
"displayName": "java.lang.String",
"duty": {
"dutyName": "java.lang.String"
},
"managerId": "java.lang.Integer",
"status": "java.lang.String",
"timestamp": "java.lang.Long",
"useId": "java.lang.String",
"user": {
"birthday": "java.lang.String",
"email": "java.lang.String",
"gesch": "java.lang.String",
"icnum": "java.lang.String",
"id": "java.lang.String",
"isOaUser": "java.lang.Integer",
"joinDate": "java.lang.String",
"nickname": "java.lang.String",
"orgeh": "java.lang.String",
"persk": "java.lang.String",
"perskTxt": "java.lang.String",
"phone": "java.lang.String",
"plans": "java.lang.String",
"plansTxt": "java.lang.String",
"portraitUri": "java.lang.String",
"region": "java.lang.String",
"tel": "java.lang.String",
"werks": "java.lang.String",
"workaddress": "java.lang.String",
"zhrjg": "java.lang.String",
"zwtype": "java.lang.String",
"zwtypeTxt": "java.lang.String"
}
}, {
"deptId": "java.lang.String",
"displayName": "java.lang.String",
"duty": {
"dutyName": "java.lang.String"
},
"managerId": "java.lang.Integer",
"status": "java.lang.String",
"timestamp": "java.lang.Long",
"useId": "java.lang.String",
"user": {
"birthday": "java.lang.String",
"email": "java.lang.String",
"gesch": "java.lang.String",
"icnum": "java.lang.String",
"id": "java.lang.String",
"isOaUser": "java.lang.Integer",
"joinDate": "java.lang.String",
"nickname": "java.lang.String",
"orgeh": "java.lang.String",
"persk": "java.lang.String",
"perskTxt": "java.lang.String",
"phone": "java.lang.String",
"plans": "java.lang.String",
"plansTxt": "java.lang.String",
"portraitUri": "java.lang.String",
"region": "java.lang.String",
"tel": "java.lang.String",
"werks": "java.lang.String",
"workaddress": "java.lang.String",
"zhrjg": "java.lang.String",
"zwtype": "java.lang.String",
"zwtypeTxt": "java.lang.String"
}
}
],
"depts": [{
"deptName": "java.lang.String",
"id": "java.lang.String",
"parentId": "java.lang.String",
"sort": "java.lang.Integer",
"status": "java.lang.String",
"timestamp": "java.lang.Long"
}, {
"deptName": "java.lang.String",
"id": "java.lang.String",
"parentId": "java.lang.String",
"sort": "java.lang.Integer",
"status": "java.lang.String",
"timestamp": "java.lang.Long"
}
],
"timestamp": "java.lang.Long"
}
}
1.5. 参考资料
Atitit 轻量级json查看器
Sublime3好像没有
Scite2.3 好些也没。
Notepad++ 默认也没。插件都找不到了 "JSON Viewer"选,,就在jstool里面了。。9M文件查看卡死。。
Jsonview独立的exe。。不行。9M查看会失败。。。小文件可以。。
Ff d Jsonview插件不行啊。卡的要死。。大文件不行。
三款Json查看小工具 - preftest - 博客园.html
作者:: 绰号:老哇的爪子claw of Eagle 偶像破坏者Iconoclast image-smasher
捕鸟王"Bird Catcher kok 虔诚者Pious 宗教信仰捍卫者 Defender Of the Faith. 卡拉卡拉红斗篷 Caracalla red cloak 万兽之王
简称:: Emir Attilax Akbar 埃米尔 阿提拉克斯 阿克巴
全名::Emir Attilax Akbar bin Mahmud bin attila bin Solomon bin adam Al Rapanui 埃米尔 阿提拉克斯 阿克巴 本 马哈茂德 本 阿提拉 本 所罗门 本亚当 阿尔 拉帕努伊
常用名:艾提拉(艾龙), EMAIL:1466519819@qq.com
头衔:uke总部o2o负责人,全球网格化项目创始人,
uke交友协会会长 uke捕猎协会会长 Emir Uke部落首席大酋长,
uke宗教与文化融合事务部部长, uke宗教改革委员会副主席
uke制度与重大会议委员会委员长,uke保安部首席大队长,uke制度检查委员会副会长,
uke 首席cto 软件部门总监 技术部副总监 研发部门总监主管 产品部副经理 项目部副经理 uke科技研究院院长uke软件培训大师
uke波利尼西亚区大区连锁负责人 汤加王国区域负责人 uke克尔格伦群岛区连锁负责人,莱恩群岛区连锁负责人,uke布维岛和南乔治亚和南桑威奇群岛大区连锁负责人
Uke软件标准化协会理事长理事长 Uke 数据库与存储标准化协会副会长
uke终身教育学校副校长 Uke医院 与医学院方面的创始人
uec学院校长, uecip图像处理机器视觉专业系主任 uke文档检索专业系主任
Uke图像处理与机器视觉学院首席院长
Uke 户外运动协会理事长 度假村首席大村长 uke出版社编辑总编
转载请注明来源:attilax的专栏 ?http://www.cnblogs.com/attilax/
--Atiend v8
Atitit 大json文件的结构化查看解决方案,高性能的jsonview attilax总结.docx的更多相关文章
- 在 Node.js 中处理大 JSON 文件
在 Node.js 中处理大 JSON 文件 场景描述 问题一: 假设现在有一个场景,有一个大的 JSON 文件,需要读取每一条数据经过处理之后输出到一个文件或生成报表数据,怎么能够流式的每次读取一条 ...
- 大数据时代的结构化存储--HBase
迄今,相信大家肯定听说过 HBase,但是对于 HBase 的了解可能仅仅是它是 Hadoop 生态圈重要的一员,是一个大数据相关的数据库技术. 今天我带你们一起领略一下 HBase 体系架构,看看它 ...
- 不知道多大的文件不要用cat查看!
今天长清女子学校的主任给我微信上发了一图片,说登录服务器的时候就查看了一个文件,结果服务器的风扇忽然变的特别响,系统慢了好多,让我看看是什么回事!我当时心里想,无缘无故怎么会这样,难不成是进病毒了?查 ...
- Golang Json文件解析为结构体工具-json2go
代码地址如下:http://www.demodashi.com/demo/14946.html 概述 json2go是一个基于Golang开发的轻量json文件解析.转换命令行工具,目前支持转换输出到 ...
- ElasticSearch 5学习(10)——结构化查询(包括新特性)
之前我们所有的查询都属于命令行查询,但是不利于复杂的查询,而且一般在项目开发中不使用命令行查询方式,只有在调试测试时使用简单命令行查询,但是,如果想要善用搜索,我们必须使用请求体查询(request ...
- Solr系列四:Solr(solrj 、索引API 、 结构化数据导入)
一.SolrJ介绍 1. SolrJ是什么? Solr提供的用于JAVA应用中访问solr服务API的客户端jar.在我们的应用中引入solrj: <dependency> <gro ...
- MySQL 5.7:非结构化数据存储的新选择
本文转载自:http://www.innomysql.net/article/23959.html (只作转载, 不代表本站和博主同意文中观点或证实文中信息) 工作10余年,没有一个版本能像MySQL ...
- [AI开发]零代码分析视频结构化类应用结构设计
视频结构化类应用涉及到的技术栈比较多,而且每种技术入门门槛都较高,比如视频接入存储.编解码.深度学习推理.rtmp流媒体等等.每个环节的水都非常深,单独拿出来可以写好几篇文章,如果没有个几年经验基本很 ...
- 视频结构化 AI 推理流程
「视频结构化」是一种 AI 落地的工程化实现,目的是把 AI 模型推理流程能够一般化.它输入视频,输出结构化数据,将结果给到业务系统去形成某些行业的解决方案. 换个角度,如果你想用摄像头来实现某些智能 ...
随机推荐
- 基于Java的REST架构风格及接口安全性设计的讨论
1.REST即表现层状态传递(Representational [,rɛprɪzɛn'teʃnl] State Transfer,简称REST). (1)REST名词解释: 通俗来讲就是资源在网络中以 ...
- 李宏毅机器学习笔记2:Gradient Descent(附带详细的原理推导过程)
李宏毅老师的机器学习课程和吴恩达老师的机器学习课程都是都是ML和DL非常好的入门资料,在YouTube.网易云课堂.B站都能观看到相应的课程视频,接下来这一系列的博客我都将记录老师上课的笔记以及自己对 ...
- 001.Heartbeat简介
一 Heartbeat简介 1.1 概述 Heartbeat是Linux-HA项目中的一个组件,也是当前开源HA项目中最成功的一个例子,它提供了所有HA软件所需要的基本功能,如心跳检测和资源接管.监测 ...
- 附004.Docker Compose环境变量说明
一 环境变量概述 Compose支持在docker-compose执行命令的文件夹中,名为.env的环境变量配置文件声明默认环境变量. 二 定义变量 2.1 语法规则 Compose建议env文件中的 ...
- 附003.Docker Compose命令详解
一 Docker Compose命令格式 Usage: docker-compose [-f <arg>...] [options] [COMMAND] [ARGS...] docker- ...
- Flutter常用组件(Widget)解析-ListView
一个可滚动的列表组件 不管在哪,列表组件都尤为重要和常用. 首先来看个例子: import 'package:flutter/material.dart'; void main () => ru ...
- 【RAY TRACING THE REST OF YOUR LIFE 超详解】 光线追踪 3-3 蒙特卡罗 (三)
开学人倍忙,趁着第二周周末,我们继续图形相关的博客 Preface 今天我们来介绍一些理论方面的东西,为Monte Carlo 应用到我们的光线追踪器做铺垫 我们今天会介绍两章的东西,因为有一章内容 ...
- 洛谷P1395 会议(CODEVS.3029.设置位置)(求树的重心)
To 洛谷.1395 会议 To CODEVS.3029 设置位置 题目描述 有一个村庄居住着n个村民,有n-1条路径使得这n个村民的家联通,每条路径的长度都为1.现在村长希望在某个村民家中召开一场会 ...
- Python3练习题系列(07)——列表操作原理
目标: 理解列表方法的真实含义. 操作: list_1.append(element) ==> append(list_1, element) mystuff.append('hello') 这 ...
- 潭州课堂25班:Ph201805201 爬虫基础 第十四课 js破解 (课堂笔记)
打断点 找要的数据 鼠标的点击事件 新浪微博登录 表单提交分析 : 先佃输入错误密码开始调式 f10 往下走, f11 进入函数 sh + f11 跳出函数 # -*- coding: utf-8 - ...