Mes documents

Barre latérale multi-racine

flex-layout

  • Getting Started

  • Guides

  • Reference

typed-rx-http

  • Getting Started

  • Guides

  • Reference

global-rx-state

  • Getting Started

  • Guides

  • Reference

webflux-fe-dev-assistant

reactive-mongo-dsl

Bulk & Historique

Faites la distinction entre le comportement de la sauvegarde générale avec cycle de vie de sauvegarde et l'insertion/upsert en masse, la suppression de sauvegarde, l'instantané d'historique.


save / saveAll

save(entity)

S'il n'y a pas d'id, utilisez insertOne, s'il y a un id, utilisez replaceOne(..., upsert=true) basé sur _id.

saveAll(...)

Effectue save() pour chaque entité, donc le hook de cycle de vie beforePersist/afterPersist s'applique.

Choix de l'API Bulk

saveAllBulk

Insertion en masse basée sur insertMany. Ce n'est pas une API pour mettre à jour des id existants.

saveAllBulkUpsert

S'il n'y a pas d'id d'entité, effectuez une insertion, s'il y en a un, effectuez un filtre _id + $set + upsert.

saveAllBulkUpsertByKey

Effectue un upsert basé sur la clé composite de l'entreprise. Si l'une des clés est manquante, l'entité est traitée comme une insertion.

java
Suppression d'entité et suppression de sauvegarde
java

backup을 활성화하면 <sourceCollection>_remove collection을 사용합니다. delete와 backup을 하나의 원자 작업으로 묶어야 한다면 호출 측에서 getTxJob(...) transaction 범위를 잡습니다.

Instantané d'historique
java

createHistory는 현재 MongoExecutionContext.write(...) 결과를 deep copy하고 _id를 제거한 뒤 <sourceCollection>_history 또는 지정한 prefix collection에 insert합니다. history write도 save lifecycle hook을 호출하지 않습니다.

© 2026 Byeolnaerim. Tous droits réservés.PrésentationPolitique de confidentialité