- 浏览: 147295 次
- 性别:
- 来自: 北京
最新评论
-
二飞在这里:
你好,这个代码里有很多方法都没有写呢,比如parseTailB ...
解析Json文本——如何将Json文本转化为Java对象 -
liuxingyu0909:
...
解析Json——Json类的实例方法 -
Hbin_0517:
写得很详细,读了内容之后···只能表示感谢!
JavaScript对象的创建、继承及原型 -
sunmoonma:
非常感谢楼主,果断是好东西。。。。
Json与XML -
wellway:
学习了,很好的东东
解析Json——Json类的实例方法
文章列表
Json是一种简单小巧的数据交换格式,在Web开发中获得了广泛应用。网络上有很多Json库,光用Java编写的就不下二十个之多。无论哪一个Json库都必须具有一个基本功能,就是把Json文本转换为用本语言表示的数据结构,本文就是介绍如何把Json文本一字符一字符的解析成Java对象。
如果要问解析Json需要哪些基础知识的话,计算机科班出身的读者立马就能想到大学时学过的编译原理这门课程。解析Json就是需要利用编译原理的知识,不过Json非常简单,解析它不必使用所有的编译技术,只要了解词法分析就可以了。不了解词法分析也不要紧,Json非常简单,不用词法分析也能解析。本文 ...
bantouyan-json库是用来解析与编码Json数据的Java库,该库按照Json标准RFC4627编写,能够实现字符串与Json实例的相互转换,可以读取Reader得到Json实例,或将Json实例写入到Writer,还能将Collection与Map对象转换为Json实例。
RFC4627定义了Json的六种类型,分别是Array、Object、String、Number、Boolean(常量true与false)与Null(常量null)。在bantouyan-json库中,这些类型有枚举类型JsonType定义,其中Number被拆分为Integer与Fl ...
菜单栏:高级->配置->应用程序布局->其他
取消勾选“自动检查更新”
Tomcat下配置Perl CGI
- 博客分类:
- Web
要在Tomcat下运行用Perl脚本编写的CGI,需要修改Tomcat的两个配置文件,即web.xml和context.xml,这两个文件都位于Tomcat主目录下的conf文件夹下。(斑头雁原创: http://bantouyan.iteye.com)
在web.xml里面需要添加如下代码,以配置 ...
在JavaScript中,我们可以用instanceof操作符来判断对象是否是某个类的实例,如果obj instaceof Class返回true,那么我们认为obj是Class的实例,obj要么由Class创建,要么由Class的子类创建。来自Java或其他强类型语言的开发者一定认为如果obj instaceof Class返回true,那么obj肯定拥有Class的所有属性。事实是这样么?我们看下面的代码:(斑头雁原创:http://bantouyan.iteye.com)
function ClassA()
{
this.ma = 'ClassA';
}
Cla ...
JavaScript是一种面向对象的脚本语言,但是JavaScript中的对象与其他语言(尤其是像Java、C#这样的静态语言)有很大的不同,JavaScript中的对象是基于原型的。原型是对象的基础,它定义并实现了一个新对象所必须包含的成员列表,并被所有同类对象实例所共享。与其他语言中类的概念相比,原型更像是类的静态成员。本文就JavaScript中对象的创建、继承做初步的讲解,并探讨下对象成员相关的一些概念和特性。(斑头雁原创:http://bantouyan.iteye.com)
一、创建对象
在JavaScript使用new操作符中创建对象,或者 ...
前段时间写bantouyan-json代码,偶然发现Java集合类的一个问题,就是一旦集合中出现了循环引用,调用hashCode方法就会触发StackOverflowError错误。一般情况下集合内不会出现循环引用,但Java集合并不禁止这样做,从具体应用 ...
Json数组是子元素的有序集合,每个子元素都有一个下标,可以根据下标操纵Json数组的子元素。类JsonArray是bantouyan-json库对Json数组的抽象,提供操纵Json数组的各种方法。本文就介绍如何操纵JsonArray。
一、创建JsonArray实例
创建JsonArray实例有两类方法,一是利用超类Json的静态方法parseJsonText、parseJsonReader与parseJavaCollection获取JsonArray实例,二是直接利用JsonArray类的构造方法创建JsonArray实例。
根据传入的参数不 ...
Json对象是Name Value对(即子元素)的无序集合,相当于一个Map对象。JsonObject类是bantouyan-json库对Json对象的抽象,提供操纵Json对象的各种方法。本文就介绍如何操纵JsonObject类。
一、创建JsonObject实例
创建JsonObj ...
在Schema设计中,我们经常把一些公用的代码写入Base Action的hook,这样可以减少我们的工作量与Schema的复杂性。然而,ClearQuest关于Base Action的设计并不完善,BaseAction的hook只能先于顶层Action运行,而不能晚于顶层Action的hook ...
Date_Time类型字段记录Entity关于时间方面的信息,是一种必不可少的类型,然而,Date_Time类型字段若不谨慎设计,有时候会带来意想不到的Bug。下面说一下我所遇到的Bug。
Schema中主Entity叫Issue,Issue有一个Date_Time类型的字段叫submitDate,用于记录提交Issue的时间。我们有一条业务规则是Issue必须在某个截止时间之前一周提交,如果小于一周则必须使用下一个截止时间。Schema上线后部门主管找我们说这条规则没有正确实现,因为发现了提交时间距截止时间小于一周的Issue。然而测试表明无法提交这样的Issu ...
ClearQuest中每一个Entity都有一个特殊字段history,这是一个系统字段,设计Schema时不允许修改或删除。该字段能够记录用户对Entity的每一次修改,包括状态的变化、Action的Name,Action发生的时间以及执行Action的User等,在考察有谁更改过Entity时十分有用。
然而,查看history时并不仅仅想知道有谁在什么时间对Entity做过什么样的Action,我们更想了解的是这个User到底改了哪些字段,以及这些字段的Value变化等信息,但是history字段无法提供这样的信息。
在Schema中还有 ...
作为所有Json实例的基类Json定义了操作Json实例的通用方法,下面将一一介绍。
一、输出Json文本
要把Json实例转换为字符串,可以调用Json类的方法generateJsonText,这个方法有两个重载版本,带参数的与不带参数的。带参数的generateJsonText(boolean)让你自己决定JsonObject子元素的Name部分是否用引号括起来,不带参数的版本相当于参数为false的情况,只是转换失败时仅返回一个空指针而不抛出异常。
Json类还重写toString方法,toString方法等同于不带参数的generateJs ...
要使用bantouyan-json库解析Json数据,可以使用类Json。类Json是JsonArray、JsonObject和JsonPrimitive的基类,它有四个静态方法用于解析Json数据,这四个方法分别是parseJsonText、parseJsonReader、parseJavaMap、parseJavaCollection,下面依次介绍 ...