SpringDataMongoDB, repository.save(entity) 不返回自增主鍵的問題排查

項目裏用到了mongodb,使用了springdata的repository做的,在自己測試的時候發現,repository的save方法,新增數據後沒有返回數據庫自增的主鍵,排查了較長時間。

後來發現是repository.save(entity) 這裏的entity傳入的id是個空字符串的原因

save源碼會判斷isNew
深入跟蹤到源碼裏,發現這裏isNew的判斷對非原型類的id只是判斷了null,而我傳入的事空字符串。所以會走更新的流程。
判斷是否是新的值,用於insert或者save

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章