Recherche…


Introduction

Jackson est une bibliothèque Java polyvalente pour le traitement de JSON. Jackson se veut la meilleure combinaison possible de rapidité, de correction, de légèreté et d’ergonomie pour les développeurs.

Caractéristiques de Jackson:

Mode multi-traitement et très bonne collaboration

Non seulement les annotations, mais aussi les annotations mixtes

Prise en charge complète des types génériques

Soutenir les types polymorphes

Exemple de liaison de données complète

Données JSON

{
  "name" : { "first" : "Joe", "last" : "Sixpack" },
  "gender" : "MALE",
  "verified" : false,
  "userImage" : "keliuyue"
}

Il faut deux lignes de Java pour en faire une instance utilisateur:

ObjectMapper mapper = new ObjectMapper(); // can reuse, share globally
User user = mapper.readValue(new File("user.json"), User.class);

User.class

public class User {

    public enum Gender {MALE, FEMALE};

    public static class Name {
        private String _first, _last;

        public String getFirst() {
            return _first;
        }

        public String getLast() {
            return _last;
        }

        public void setFirst(String s) {
            _first = s;
        }

        public void setLast(String s) {
            _last = s;
        }
    }

    private Gender _gender;
    private Name _name;
    private boolean _isVerified;
    private byte[] _userImage;

    public Name getName() {
        return _name;
    }

    public boolean isVerified() {
        return _isVerified;
    }

    public Gender getGender() {
        return _gender;
    }

    public byte[] getUserImage() {
        return _userImage;
    }

    public void setName(Name n) {
        _name = n;
    }

    public void setVerified(boolean b) {
        _isVerified = b;
    }

    public void setGender(Gender g) {
        _gender = g;
    }

    public void setUserImage(byte[] b) {
        _userImage = b;
    }
}

Le retour au JSON est tout aussi simple:

mapper.writeValue(new File("user-modified.json"), user);


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow