sql >> Databáze >  >> NoSQL >> MongoDB

Jak serializovat ObjectId do JSON?

Vypadá to, že Jackson byl upraven tak, aby serializoval pole ID řetězce zvláštním způsobem. To je pravděpodobně součástí integrace s org.bson knihovna.

Problém je v tom, že váš deserializátor je parametrizován pomocí ObjectId zadejte místo String nebo prostý Object . Zkuste to změnit následovně a také odstraňte @ObjectId anotace z deklarace pole. Zde je příklad:

public class ObjectIdSerializer extends JsonSerializer<Object> {
    @Override
    public void serialize(Object value, JsonGenerator jsonGen,SerializerProvider provider) throws IOException {
        jsonGen.writeString(value.toString());
    }
}

Můžete také zvážit přijetí třídy poskytovatelů Jackson-Jongo opravit serializaci ID objektu pro všechny třídy.




  1. Bitva o databáze NoSQL - Porovnání funkcí NoSQL MongoDB a MSSQL

  2. Mongodb, seskupte se podle datadiff a získejte hodinu

  3. připojení k databázi atlas mongo

  4. Jaká jednotka se používá k zobrazení využití procesoru Redis