简体   繁体   中英

Jackson \ GSON - Pojo to JSON and vice versa. is file \ serialization mandatory?

I'm in need of a JSON - > Pojo - > JSON transformation.

I looked into the mainstream libraries Jackson and GSON,

Apparently both use:

//write converted json data to a file named "file.json"
FileWriter writer = new FileWriter("c:\\file.json");

or In\Output Streams..

Two things scare me the most when i write new code:

  1. I\\O (HD specifically)
  2. Serialization

I try to avoid both of these as much as I can.

Is there any alternative way to do this?

Those libraries DO NOT need to use files to operate, so answering your question: NO, file serialization is not mandatory . In fact it's not only not mandatory, but it'd be such a pain in the ass to read/write from/to a file each time you need to serialize/deserialize a JSON reponse!

In your example they use a File to write and read the JSON in order to imitate the usual scenario, which probably includes pass data from/to a web service for example, instead of from/to a File ...

In fact, for example in Gson, serialization/deserialization is quite straightforward with a simple Pojo , just like this:

Serialization

Pojo pojo = new Pojo();
Gson gson = new Gson();
String pojoJSON = gson.toJson(pojo);

Deserialization

Gson gson = new Gson();
Pojo pojo = gson.fromJson(pojoJSON, Pojo.class);

I suggest you to take a look at Gson documentation , which is pretty clear and quite short, once you read it you'll understand everything much better...

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM