第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何正確使用 Spring Data 的 save 方法?

如何正確使用 Spring Data 的 save 方法?

侃侃無(wú)極 2023-06-21 14:56:24
我想知道我應(yīng)該如何處理 save 方法。讓我們考慮一下我想注冊(cè)新用戶的情況。首先,我需要檢查是否有具有該 ID 或登錄名的用戶。如果我找不到任何人,我可以創(chuàng)建一個(gè)新的人并使用 Spring Data 中的 save 方法。當(dāng)我發(fā)現(xiàn)有人有這樣的登錄名時(shí)怎么辦?我應(yīng)該拋出異常嗎?我不喜歡它們,對(duì)我來(lái)說(shuō),有時(shí)就像逃避問(wèn)題。返回 null 而不是對(duì)象也不是一個(gè)好的選擇,不是嗎?這是我的問(wèn)題,我想以最溫和的方式解決。返回什么以及如何處理這種情況。也許例外是必要的?然后就在我的控制器里處理一下就可以了。我希望你能給我建議。我寧愿向有經(jīng)驗(yàn)的人尋求提示和幾句話,而不是從互聯(lián)網(wǎng)上的大多數(shù)頁(yè)面獲得普通的解決方案。感謝:D
查看完整描述

1 回答

?
德瑪西亞99

TA貢獻(xiàn)1770條經(jīng)驗(yàn) 獲得超3個(gè)贊

異常字面意思是“由于正常工作流之外的情況,我無(wú)法正常完成此操作”,是何時(shí)拋出AccountAlreadyExists異常的完美示例。您不是在“逃跑”,而是在通知應(yīng)用程序的更高層它必須處理該問(wèn)題。作為一個(gè)思想實(shí)驗(yàn):如果你有不止一個(gè)原因導(dǎo)致某件事失敗怎么辦?您如何區(qū)分(重復(fù)帳戶)和(禁止域名)?nullnull

請(qǐng)注意,在這種情況下,您肯定應(yīng)該有類似 a 的東西,UserAccountService它的職責(zé)是執(zhí)行諸如“無(wú)重復(fù)帳戶”之類的規(guī)則,這將是實(shí)際調(diào)用userRepository.save(newUser).

如果您使用 Spring MVC 視圖,那么您需要捕獲控制器中的異常并將用戶發(fā)送到錯(cuò)誤頁(yè)面。如果您使用 JSON API,那么您可能希望讓異常轉(zhuǎn)義以將錯(cuò)誤返回給客戶端;考慮用 或 類似的注釋你的異常類@ResponseStatus(UNPROCESSABLE_ENTITY)。


查看完整回答
反對(duì) 回復(fù) 2023-06-21
  • 1 回答
  • 0 關(guān)注
  • 179 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)