Eugene
Eugene

Reputation: 60184

JSON to Java class

Is there an easy way to map data from JSON to fields of my class by means of android APIs?

JSON:

{ email: 'email', password: 'pass' }

My class:

class Credentials
{
    string email;
    string password;
}

Upvotes: 13

Views: 9264

Answers (4)

StaxMan
StaxMan

Reputation: 116522

Use Jackson. Much more convenient (and if performance matters, faster) than using bundled org.json classes and custom code:

Credentials c = new ObjectMapper().readValue(jsonString, Credentials.class);

(just note that fields of Credentials need to be 'public' to be discovered; or need to have setter methods)

Upvotes: 14

Beasly
Beasly

Reputation: 1537

I suppose you have more than one Credential u want to get...

with the org.json package you could use a JSONArray to get various values at the same time out of one JSON file.

Upvotes: 0

KingCrunch
KingCrunch

Reputation: 131931

Use the org.json-Package.

JSONObject x = new JSONObject(jsonString);
Credentials c = new Credentials();
c.email = x.getString("email");
c.password = x.getString("password");

Its also part of the android runtime, so you dont need any external package.

Upvotes: 6

Valentin Rocher
Valentin Rocher

Reputation: 11669

You could use GSON.

Upvotes: 8

Related Questions