Hello,
i have look with interest google-gson as a way to serialize complex java object
to webapp.
now, i have to get the output back (json) and convert into a standard plain DOM
object (or something like that) to be able to work with a generic json tree.
What i have done so far is to use a
JsonReader reader = new JsonReader(in)
and then write a simple recursive function (taht is 90% equals to what you do
when you use the jsonreader)
to parse the three (do some peek, switch case, make it recursive and so on)
everything work like a charm, and is quite fast.
i have than take a look to json-smart v2 (newer ersion , used only as a parser,
and is 20% fast than gson 2.2.2 (never version) parser
here are some example
gsonParser 5009ms
jsonSMART 3633ms
this is done with a huge json, iterated 20000 times x 10 repetition each (to
allow a bit of warmup)
and this data are the avg except the first 2 iteration (leaved out to allow a
warmup, useful for this kind of
microbenckmark imho)
the json is a nested root -> 10 child -> 10 subchild each node with 10 random
attr (mixed)
The code that create my custom "dom" element (that is for my convenience
similar to dom4j syntax due to migration issue) is a wrapper for both library,
then i use their internal obj to create my wrapper (creation costs is the same,
the 2 method generate the same output)
Have you ever try some benchmarking with jsonSMART?
Obviusly gson is used to do other thinks, it's not only a parser for json, but
in this case the save is pretty high.
I also haven't digg to much on jsonSMART, but probably it can make do work
better, as in your case i don't use your jsonElement, but directly the parser
(on jsonSMART i use their convenient jsonElement, since is so fast)
warm regards
Original issue reported on code.google.com by gippo...@gmail.com on 27 Sep 2012 at 1:29
Original issue reported on code.google.com by
gippo...@gmail.com
on 27 Sep 2012 at 1:29