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

既存のspring-data-mongodbドキュメントコレクションに最終フィールドを追加するにはどうすればよいですか?

    新しいprivate finalを追加できないことがわかりました @PersistenceContstructorのみを使用して既存のコレクションへのフィールド 注釈。代わりに、org.springframework.core.convert.converter.Converterを追加する必要がありました ロジックを処理するための実装。

    コンバーターは次のようになりました。

    @ReadingConverter
    public class SnapshotReadingConverter implements Converter<DBObject, Snapshot> {
    
        @Override
        public Snapshot convert(DBObject source) {
            long id = (Long) source.get("_id");
            String description = (String) source.get("description");
            boolean active = (Boolean) source.get("active");
            boolean billable = false;
            if (source.get("billable") != null) {
                billable = (Boolean) source.get("billable");
            }
            return new Snapshot(id, description, active, billable);
        }
    }
    

    これが将来誰かに役立つことを願っています。




    1. MongoDBelemMatchが期待どおりに機能しない

    2. ReactiveMongo 0.18.8では、1つのコマンドで、値が異なる複数のドキュメントの更新を実行するにはどうすればよいですか?

    3. mongodb:upserting:ドキュメントが挿入されている場合にのみ値を設定します

    4. MongoDBドキュメントの二重にネストされた配列から要素を削除する方法。