Tài liệu của tôi

Thanh bên đa gốc

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

Ghi & Lịch sử hàng loạt

Phân biệt sự khác biệt giữa lưu trữ thông thường áp dụng vòng đời lưu trữ và hành vi của bulk insert/upsert, sao lưu xóa, snapshot lịch sử.


save / saveAll

save(entity)

Nếu không có id, sử dụng insertOne, nếu có id, sử dụng _id làm tiêu chí cho replaceOne(..., upsert=true).

saveAll(...)

Thực hiện save() cho mỗi thực thể, do đó hook vòng đời beforePersist/afterPersist được áp dụng.

Lựa chọn API hàng loạt

saveAllBulk

Bulk insert dựa trên insertMany. Đây không phải là API cập nhật id hiện có.

saveAllBulkUpsert

Nếu không có id thực thể, thực hiện insert, nếu có thì thực hiện lọc _id + $set + upsert.

saveAllBulkUpsertByKey

Thực hiện upsert dựa trên khóa phức hợp công việc. Nếu một trong các khóa không có, thực thể đó sẽ được xử lý như một insert.

java
Xóa thực thể và xóa bản sao lưu
java

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

Ảnh chụp lịch sử
java

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

© 2026 Byeolnaerim. Bảo lưu mọi quyền.Giới thiệuChính sách xử lý thông tin cá nhân