1
我需要確保插入發生,如果失敗,系統應該拋出一個錯誤。在MongoDB的java驅動程序中違反唯一索引約束的影響是什麼?
我是否需要檢查自己發生的插入,還是如果插入不可能,Java驅動程序會拋出一個錯誤?
我需要確保插入發生,如果失敗,系統應該拋出一個錯誤。在MongoDB的java驅動程序中違反唯一索引約束的影響是什麼?
我是否需要檢查自己發生的插入,還是如果插入不可能,Java驅動程序會拋出一個錯誤?
你會得到一個MongoException.DuplicateKey例外
http://api.mongodb.org/java/current/com/mongodb/MongoException.DuplicateKey.html
不過,這將取決於,相信您寫的關注。由於您可以:
設置錯誤忽略了寫入問題,請在您的 驅動程序中指定w值爲-1。
這會關閉寫入確認。
http://docs.mongodb.org/manual/core/write-concern/
隨着錯誤忽略集:
在這個級別寫的關注,客戶端無法檢測失敗 寫操作。
默認情況下,已確認寫入關注的是在驅動程序驅動的Java版本2.10.0的啓用,這是不是在以前的版本的情況。因此,請檢查您正在使用的驅動程序。
在最新版本中,這是一個DuplicateKeyException,請參閱: http://api.mongodb.com/java/3.2/com/mongodb/DuplicateKeyException.html – user1587520