sql >> データベース >  >> NoSQL >> MongoDB

ObjectIdをJSONにシリアル化する方法は?

    Jacksonは、文字列IDフィールドを特別な方法でシリアル化するようにカスタマイズされているようです。これはおそらくorg.bsonとの統合の一部です 図書館。

    問題は、デシリアライザーがObjectIdによってパラメーター化されていることです。 Stringの代わりに入力する またはプレーンなObject 。次のように変更し、@ObjectIdも削除してみてください フィールド宣言からの注釈。次に例を示します:

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

    Jackson-Jongoプロバイダークラス の採用を検討することもできます。 すべてのクラスのオブジェクトIDのシリアル化を修正します。




    1. SQLでのパディング

    2. ClusterControlでのデータベース運用レポートの概要

    3. リストフィールドの値がリストの基準値と一致する場合、C#でLINQを使用してMondoDBレコードを検索します

    4. MongoDBで古い接続を処理する方法