JSON学习(转)

学习笔记19-txt转json 【代码】学习零碎-txt转json。 阅读详情

json-lib.jar开发包使用:

依赖包:
commons-beanutils.jar;
commons-httpclient.jar;
commons-lang.jar;
ezmorph.jar;不少人使用时会提示net.sf.ezmorph.xxx找不到,就是缺这个:
morph-1.0.1.jar

相关链接:
http://json-lib.sourceforge.net/
http://ezmorph.sourceforge.net/
http://morph.sourceforge.net/

使用过程中问题:
1,把bean转化为json格式时老提示如下错误:
Exception in thread "main" net.sf.json.JSONException: java.lang.NoSuchMethodException: Property 'name' has no getter method
解决:声明bean为public class xxx,必须是public,我用默认类型(class xxx)都不行

2,Exception in thread "main" java.lang.NoSuchMethodError: org.apache.commons.lang.ArrayUtils.toObject([C)[Ljava/lang/Character;
原因:定义属性如下:private char[] options = new char[] { 'a', 'f' };好像不能处理这种类型的

3, private String func1 = "function(i){ return this.options[i]; }";
   和
   private JSONFunction func2 = new JSONFunction(new String[] { "i" },
     "return this.options[i];");
   转换后显示结果差不多:
   {"func1":function(i){ return this.options[i];,"func2":function(i){ return this.options[i]; }}

测试类:
 
  1. import java.util.ArrayList;  
  2. import java.util.HashMap;  
  3. import java.util.List;  
  4. import java.util.Map;  
  5.   
  6. import net.sf.json.JSONArray;  
  7. import net.sf.json.JSONObject;  
  8.   
  9. public class Json {  
  10.     public static void main(String[] args) {  
  11.         Json j = new Json();  
  12.         j.bean2json();  
  13.     }  
  14.   
  15.     public void arr2json() {  
  16.         boolean[] boolArray = new boolean[] { true, false, true };  
  17.         JSONArray jsonArray = JSONArray.fromObject(boolArray);  
  18.         System.out.println(jsonArray);  
  19.         // prints [true,false,true]  
  20.     }  
  21.   
  22.     public void list2json() {  
  23.         List list = new ArrayList();  
  24.         list.add("first");  
  25.         list.add("second");  
  26.         JSONArray jsonArray = JSONArray.fromObject(list);  
  27.         System.out.println(jsonArray);  
  28.         // prints ["first","second"]  
  29.     }  
  30.   
  31.     public void createJson() {  
  32.         JSONArray jsonArray = JSONArray.fromObject("['json','is','easy']");  
  33.         System.out.println(jsonArray);  
  34.         // prints ["json","is","easy"]  
  35.     }  
  36.   
  37.     public void map2json() {  
  38.         Map
  39.         map.put("name", "json");  
  40.         map.put("bool", Boolean.TRUE);  
  41.         map.put("int", new Integer(1));  
  42.         map.put("arr", new String[] { "a", "b" });  
  43.         map.put("func", "function(i){ return this.arr[i]; }");  
  44.   
  45.         JSONObject json = JSONObject.fromObject(map);  
  46.         System.out.println(json);  
  47.         // prints  
  48.         // ["name":"json","bool":true,"int":1,"arr":["a","b"],"func":function(i){  
  49.         // return this.arr[i]; }]  
  50.     }  
  51.   
  52.     public void bean2json() {  
  53.         JSONObject jsonObject = JSONObject.fromObject(new MyBean());  
  54.         System.out.println(jsonObject);  
  55.         /* 
  56.          * prints  
  57.          * {"func1":function(i){ return this.options[i]; 
  58.          * },"pojoId":1,"name":"json","func2":function(i){ return 
  59.          * this.options[i]; }} 
  60.          */  
  61.     }  
  62.   
  63.     public void json2bean() {  
  64.         String json = "{name=/"json2/",func1:true,pojoId:1,func2:function(a){ return a; },options:['1','2']}";  
  65.         JSONObject jb = JSONObject.fromString(json);  
  66.         JSONObject.toBean(jb, MyBean.class);  
  67.         System.out.println();  
  68.     }  
  69. }  

 

操作的bean:
 
  1. import net.sf.json.JSONFunction;  
  2.   
  3. public class MyBean {  
  4.     private String name = "json";  
  5.     private int pojoId = 1;  
  6.     // private char[] options = new char[] { 'a', 'f' };  
  7.     private String func1 = "function(i){ return this.options[i]; }";  
  8.     private JSONFunction func2 = new JSONFunction(new String[] { "i" },  
  9.             "return this.options[i];");  
  10.   
  11.     // getters & setters  
  12.     ......  
  13. }  


题外话: 这个我对json-lib包的初次尝试,希望对大家有所帮助,另外大家有谁用过其它处理json的开发包,提出来,大家探讨一下~!!!!

材料力学小白必看:纯弯曲正应力计算全解析(附实例演示) 本文详细解析了材料力学中纯弯曲正应力的计算原理与工程应用,通过实例演示帮助初学者掌握关键公式和计算流程。内容涵盖纯弯曲的基本假设、正应力分布规律、截面特性计算,以及现代工具如Excel、ANSYS和Python在应力分析中的应用,特别适合材料力学小白系统学习。 阅读详情

相关推荐

Elsevier投稿实战:从ESWA模板到录用通知的全流程拆解

本文详细拆解了Elsevier旗下期刊ESWA(Expert Systems With Applications)的投稿全流程,从模板选择、投稿系统操作到审稿意见回复和录用后注意事项。重点分享了单栏LaTeX模板调整、APA文献格式处理、Highlights撰写技巧等实战经验,帮助研究者高效完成投稿并提升录用概率。

weixin_32715349的博客 241

json-lib包笔记

json-lib.jar开发包使用: 依赖包: commons-beanutils.jar; commons-httpclient.jar; commons-lang.jar; ezmorph.jar;不少人使用时会提示net.sf.ezmorph.xxx找不到,就是缺这个: morph-1.0.1.jar 相关链接: http://json-lib.sourceforge.net/ ht...

weishuwei 222

用Matlab搞定Delta并联机器人运动学:从建模到正逆解完整流程(附代码)

本文详细介绍了如何使用Matlab实现Delta并联机器人的运动学分析,包括几何建模、正逆解求解及可视化验证。通过符号计算和数值迭代法,解决非线性方程组问题,并提供完整代码示例,帮助读者快速掌握Delta机器人的运动学计算与应用。

weixin_30955617的博客 177

java 基础常用的 方法

zejun.zhou zejun.zhou11 //   List listValue = null; //  //   for (int i = 0; i //    listValue = new ArrayList(); //    testEX test = new testEX(); // //    listValue.add(test.getIi() + "dd" +

u012291104的专栏 1184

TI 实时操作系统SYS/BIOS使用总结

1:概述: SYS/BIOS 是一个可扩展的实时的操作系统。具有非常快速的响应时间(在中断和任务切换时达到较短的延迟),响应时间的确定性,强壮的抢占系统,优化的内存分配和堆栈管理(尽量少的消耗和碎片)。能够实现系统的模块化并可裁剪。 最大的特点就是:实时。 2:XDCtools: XDCtools 是SYS/BIOS引用的一种实时的软件组件技术(RTSC),它包括一些有用的工具,标准的AP

带头奋青的博客 5万+

使用sklearn学习多项式回归(三)

1,什么是线性 我们无数次提到”线性“这个名词。在支持向量机中,我们也曾经提到最初的支持向量机只能够分割线性可分的数据,然后引入了”核函数“来帮助我们分类那些非线性可分的数据。我们也曾经说起过,比如说决策树,支持向量机是”非线性“模型。所有的这些概念,让我们对”线性“这个词非常熟悉,却又非常陌生——因为我们并不知道它的真实含义。接下来我们看看线性回归模型改进的核心之一:帮助线性回归解决非线性问题。 1.1,变量之间的线性关系 ”线性“这个词用于描述不同事物时有着不同的含义。我们最常使用的线性是指“变量

理科男同学 5101

[ERROR] net.sf.json.JSONException: java.lang.NoSuchMethodException 解决方案

分析: 记一次Json2bean的异常情况,本次项目中用的是net.sf.json包转换Json,不知道其他包有没有相同问题。 一开始偶然出现net.sf.json.JSONException: java.lang.NoSuchMethodException: Unknown property 'xxx' on class 'class xxx'异常。 由于之前测试都没有发现问题,没有去考虑...

SupperWhite的博客 2906

【加密社】私钥碰撞器,秒杀市面上的碰撞器

基于上述的逻辑和代码,开发了ETH挖掘器(图1.1)这里有个亮点是:1.很多开发者在判断地址是否有效的环节上,用的是查询余额,其实这是不对的,查询余额你可能只能查询对应代币的余额,例如usdt,eth等但是如果用查询交易次数就不一样了,你只要是交易过,我就认为是有效钱包,这样的速度比查询余额要快,也要更准确。2.rpc节点可配置。

加密社的博客 1581

net.sf.json.JSONException: java.lang.NoSuchMethodException

在尝试将json对象转换为list时候出现了如下错误 Exception in thread "main" net.sf.json.JSONException: java.lang.NoSuchMethodException: AAA$Pdata.<init>() at net.sf.json.JSONObject.toBean(JSONObject.java:288)...

weixin_30362083的博客 343

YOLOv11改进策略【SPPF】| 将特征金字塔池化修改为:SPPCSPC,提升模型的特征提取能力和计算效率。

本文记录的是。YOLOv7中的SPPCSPC(Spatial Pyramid Pooling Cross Stage Partial Connections)模块是一种结合了(SPP)和(CSP)的改进结构,本文将其添加到YOLOv11中,

Limiiiing的博客 1822

【项目实战】主流车载操作系统,QNX实时操作系统入门介绍

QNX是一种实时操作系统,自1980年代初期由Quantum Software Systems成立以来,已被广泛应用于各种行业和领域。QNX具有实时响应、高可靠性和分布式等特点,为各种设备提供了强大的底层操作系统平台。随着科技的不断发展和进步,QNX系统的应用范围和潜力也在不断扩大。本文将全面介绍QNX系统,包括其引言、背景、系统特性、应用领域和生态系统等方面。QNX作为一种实时操作系统,具有高效的实时性能、高可靠性、分布式、可剪裁性和可扩展性等特点。它在各个领域都有广泛的应用,并拥有一个庞大的生态系统。

奶爸的编程之路,也就一周冷个三天 3071

JSON与JAVA的数据转换

JSON-lib这个Java类包用于把bean,map和XML转换成JSON并能够把JSON转回成bean和DynaBean。  下载地址:http://json-lib.sourceforge.net/  还要需要的第3方包: commons-beanutils.jar,commons-httpclient.jar,commons-lang.jar,ezmorph.jar,morph-1.0

caoyishuai的专栏 1190

22、狭义相对论与曲线坐标空间相关知识解析

本文深入解析了狭义相对论与曲线坐标空间的核心概念,涵盖能量-动量张量的定义与守恒、曲线坐标系下的度量张量与基向量性质、协变与逆变张量的变换规则,并介绍了克里斯托费尔符号与协变导数的计算方法。进一步探讨了在弯曲空间中进行微积分运算的基础理论及其在广义相对论中的关键应用,如爱因斯坦场方程如何描述物质-能量对时空曲率的影响,为理解黑洞等引力现象提供了理论框架。

lambda的博客 116

Jackson 学习笔记 XML转JSON

Jackson 学习笔记 XML转JSON依赖示例XML > JavaBean > JsonXML > JsonNode 利用jackson实现 xml 2 json。 依赖 SpringBoot 项目自带了 jackson-databind 省略。只需要添加jackson-dataformat-xml即可。另外version也可以省掉。 <dependency> <groupId>com.fasterxml.jackson.core&l

灵台方寸山斜月三星洞 2570

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

json学习笔记,json与js对象格式的转换,js对象转json字符串,json格式转js对象

json学习笔记,json与js对象格式的转换,js对象转json,json格式转js对象 一、JSON简单介绍: 名称:JavaScript Object Notation ---- JS对象表示法。 Js中的对象只有JS自己认识,其他的语言都不认识。 JSON和Js对象的格式一样,只不过JSON字符串中的属性名必须加双引号,其他的和JS语法一样。 JSON就是一个特殊格式的字符串,这个字符串可以被任意的语言所识别,并且可以转换为任意语言中的对象,JSON在开发中主要用来数据的交互。 二、JSON中

Codernmx 5585

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

【系统学习SpringBoot】SpringBoot 对象转JSON输出

SpringBoot输出JSON以往使用SpringMVC中开发时,对象转JSON需要配置很多东西 【1】添加FastJson/jackjson等第三方jar 【2】在配置文件中配置Controller扫描 【3】给方法添加@ResponseBody配置FastJson还需要给配置文件中添加(很麻烦( ▼-▼ ))<mvc:annotation-driven> <mvc:message

小鼠标的博客 1万+

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

json-java转json基础学习

JSON 1. 概念: JavaScript Object Notation JavaScript对象表示法 Person p = new Person(); p.setName("张三"); p.setAge(23); p.setGender("男"); var p = {"name":"张三","age":23,"gender":"男"}; * json现在多用于存储和交换文本信息的语法 * 进行数据的传输 * JSON 比 XML 更小、更快,更易解析。 2. 语法: 1. 基本规则 * 数

刘向阳的博客 237

IOS学习——json转Byte[]转化

    又有一个项目要结束了哈哈哈哈,久违的和师长一起review代码,这一篇是番外篇,来讲一讲OC中的json转化为Byte[]发送的事情。    这个项目要求要实现iphone与服务器的tcp连接,然后发送json数据。要以Byte[]的形式发送json数据而且前四个字节要保存json数据长度。    那么我们就来上代码了,首先是OC中的json数据表示NSDictionary *dictM ...

qq_37656219的博客 4488

php一元数组转json,学习猿地-php怎么实现数组转json

php实现数组转json的方法:利用json_encode函数来实现,如【json_encode($array_1)】。该函数用于对变量进行JSON编码,如果执行成功,则返回JSON数据。json_encode() 用于对变量进行 JSON 编码,该函数如果执行成功返回 JSON 数据,否则返回 FALSE 。(视频教程推荐:java视频教程)语法:string json_encode ( $va...

weixin_35084652的博客 210

string 转 json_手写Json解析器学习心得

哦?从"{"开始,看来是个对象了!一. 介绍一周前,老同学阿立给我转了一篇知乎回答,答主说检验一门语言是否掌握的标准是实现一个Json解析器,网易游戏过去的Python入门培训作业之一就是五天时间实现一个Json解析器。知乎回答-链接:https://www.zhihu.com/question/50701819/answer/122610566该回答对应的问题提及了一个开源的“从零开始...

weixin_39625305的博客 139

学习fabric.js对象转json存储并通过json转对象添加到画布中

学习fabric.js对象转json存储并通过json转对象添加到画布中

徊忆羽菲 3292

FastJson的学习之JSON互相转Map集合,List集合,JavaBean

maven工程的依赖 dependency> groupId>com.alibabagroupId> artifactId>fastjsonartifactId> version>1.2.45version> dependency> fastjsonJar包 创建两个实体类 一个是部门

小白 5098

JSON学习(转)

JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。 JSON的规则很简单: 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);...

Everything is possible--博客的内容只是作为一种备忘 90

【转】Zend_Json学习

先了解下Json(资料来自www.json.org):JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language(http://www.crockford.com/javascript), Standard ECMA-262 3rd Edition –...

weixin_30667649的博客 99

【SQL的学习笔记】列转行和查询结果转JSON

前言 在分组查询时,没被设定为分组依据的列需要使用聚合函数合并,一般情况下,使用各个数据库提供的聚合函数就足够了,而一些特殊的使用场景可能需要手动将一列的多行数据转成行,实现类似聚合函数的效果。 案例 现有如下两张表:Class(班级)、Student(学生),其关系如图: 两表内的数据如下: 两表连接查询代码如下: --先查看连接的结果 SELECT * FROM Class C LEFT...

小沈杰的小世界 816

gson json转map_天天用JSON,JSON由来你知道吗?学习JSON在Java中的相互转换

JSON是什么东西这个问题我肯定没有度娘专业,看度娘怎么回答:JSON,全称:JavaScript Object Notation,是一种轻量级的数据交换格式。它是基于欧洲计算机协会制定的js规范的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。JSON由...

weixin_39943799的博客 321
上一篇: windows+apache+tomcat整合笔记
下一篇: JSON与JAVA数据的转换
BinTime
博客等级 码龄20年 29粉丝 43原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值