Buscar..


Introducción

Jackson es una biblioteca multipropósito de Java para procesar JSON. Jackson pretende ser la mejor combinación posible de rápida, correcta, ligera y ergonómica para desarrolladores.

Jackson características :

Modo multiprocesamiento, y muy buena colaboración.

No solo anotaciones, sino también anotaciones mixtas.

Totalmente compatible con los tipos genéricos.

Soporta tipos polimórficos.

Ejemplo completo de enlace de datos

Datos JSON

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

Se requieren dos líneas de Java para convertirlo en una instancia de Usuario:

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

Clase de usuario

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;
    }
}

Marshalling de nuevo a JSON es igualmente sencillo:

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


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow