簡體   English   中英

從異常消息 spring boot 獲取 id

[英]get the id from an exception message spring boot

大家好,我希望你們一切順利,我發現了一個異常 (DataIntegrityViolationException),其中無法刪除指定的 ID,因為它仍在父實體中。 我想知道是否有任何方法可以從捕獲的異常中獲取指定的 id。

DataIntegrityViolationException只是包裝了底層 JDBC 驅動程序拋出的異常。 所以這取決於 JDBC 驅動程序是否在拋出的異常中提供了此類信息。 但根據我的經驗,大多數 JDBC 驅動程序不會直接從異常中提供違規 ID。 它只是提供某種錯誤代碼或錯誤消息。 您可以嘗試查看從中解析違規 ID 是否可行並且有意義。

更可靠的查找違規ID的方法是在刪除之前根據您的業務領域自行檢查,而不是依賴拋出的異常。 在這種情況下,您可以在實際刪除之前簡單地查明子實體是否存在父實體。

DataIntegrityViolationException中獲取JDBC驅動拋出的異常(即root cause異常),我傾向於使用Guava庫來獲取。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM