補充:還有一個原因是因為spring的對象沒有被成功注入,例如 mapper沒有被成功注入,拋出異常時在這種封裝場景下將會拋出 500 服務器內部錯誤,
這種情況下要排查還是靠debug然后看看到底是哪一步出問題了,比如這次mapper在使用的時候,拋出了spring的異常,那么就可以打印一下mapper,看看是否為空,
來判斷是否成功注入。
原因是多種多樣的,還是要看控制台三個輸出窗口,看看有沒有異常,不過這里拋出到json了,json顯示我自己定義的 500 服務器內部錯誤,
如果必須看到異常信息,可以封裝成別的輸出形式,或者直接解除封裝,或者debug,
這里的錯誤是因為我用springmvc封裝傳到controller的bean的名字,比如 devicelowerid 寫成了 帶有大寫符號的 deviceLowerId 了,而bean里面用mbg自動生成的時候是全小寫,一比對,自然就找不到dean名稱了,所以出現異常,這個時候debug看controller接收的bean對象,可以看到沒有被傳過來的參數顯示為null,這就是因為前端傳的key沒有和bean中的字段對應上導致的。
(像這種的錯誤,因為是springmvc拋出的異常,在這個封裝json的場景下,會拋出到我自定義的處理器,然后顯示 500 服務器內部錯誤)