Sök…


Introduktion

Jackson är ett Java-bibliotek med flera ändamål för bearbetning av JSON. Jackson strävar efter att vara den bästa kombinationen av snabb, korrekt, lätt och ergonomisk för utvecklare.

Jackson har :

Flerbehandlingsläge och mycket bra samarbete

Inte bara kommentarer utan också blandade kommentarer

Stöder helt generiska typer

Stöd polymorfa typer

Exempel på fullständig bindning av data

JSON-data

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

Det tar två rader Java för att förvandla den till en användarinstans:

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

Att marschera tillbaka till JSON är på samma sätt enkelt:

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


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow