Spring Boot構建web項目示例

這次示例緊接著上一次,所以我也就不再廢話了。直接開始

將上一次目錄整理如下:

Spring Boot構建web項目示例

保存一個用戶示例:

Spring Boot構建web項目示例

Spring Boot構建web項目示例

實現表單驗證的簡單示例:

需求:不允許未成年註冊信息

Spring Boot構建web項目示例

Spring Boot構建web項目示例

測試:

Spring Boot構建web項目示例

Spring Boot構建web項目示例

使用AOP處理請求:

在pom文件中添加相關依賴

Spring Boot構建web項目示例

切面處理(spring相關的知識,不再解釋)

Spring Boot構建web項目示例

測試:

Spring Boot構建web項目示例

Spring Boot構建web項目示例

使用AOP輸出日誌信息:注意logger的包所屬

Spring Boot構建web項目示例

測試:

Spring Boot構建web項目示例

AOP關於記錄http請求相關信息:

Spring Boot構建web項目示例

測試:

Spring Boot構建web項目示例

關於獲取請求返回內容示例:

Spring Boot構建web項目示例

測試:

Spring Boot構建web項目示例

關於統一異常處理:

設置保存用戶,name為必填項

Spring Boot構建web項目示例

設置返回數據的格式:

Spring Boot構建web項目示例

相關邏輯判斷:

Spring Boot構建web項目示例

測試:
Spring Boot構建web項目示例Spring Boot構建web項目示例

當然以上的代碼還可以優化,比如:
Spring Boot構建web項目示例

Spring Boot構建web項目示例

統一的異常處理:

在service層中定義以下的方法

Spring Boot構建web項目示例

在controller調用此方法:

Spring Boot構建web項目示例

測試:
Spring Boot構建web項目示例

顯然返回的數據不是我們所需要的格式

我們創建一個異常捕獲的類,然後將其封裝到創建的Result中,然後返回給瀏覽器

Spring Boot構建web項目示例

測試: 這種格式看著就比較舒服

Spring Boot構建web項目示例

當然我們也可以自定義異常處理的類

自定義異常繼承RuntimeException,具有事務回滾的機制,不要直接繼承Exception

Spring Boot構建web項目示例

service層中修改代碼:
Spring Boot構建web項目示例

在handlerException中修改邏輯代碼

Spring Boot構建web項目示例

測試:

Spring Boot構建web項目示例

由以上情況可知,當自定義異常比較多的時候,code和msg的管理就成了一個問題,如果放任不管,那麼大量使用的時候,狀態碼一對多的關係就有可能出現,所以我們需用到枚舉類型來管理

自定義枚舉類性:

只需要有參構造和get方法

Spring Boot構建web項目示例

service層修改代碼:

Spring Boot構建web項目示例

自定義Exception代碼修改:
Spring Boot構建web項目示例

這樣看起來就舒服多了

關於單元測試示例:可以在方法上面使用快捷鍵 ctrl+shift+t

測試service方法

Spring Boot構建web項目示例

測試失敗示例:期望值是路飛,實際上是索隆 測試未通過。

Spring Boot構建web項目示例

測試成功示例:

Spring Boot構建web項目示例

測試controller API接口:

測試url:

Spring Boot構建web項目示例

測試返回內容:

Spring Boot構建web項目示例

Spring Boot構建web項目示例

我們每次打包項目的時候,都會自動執行單元測試,有時候,我們必須關閉單元測試,那麼該如何做的:

Spring Boot構建web項目示例

關閉單元測試:在項目的目錄下執行如下命令即可 mvn clean package -Dmaven.test.skip=true

Spring Boot構建web項目示例


分享到:


相關文章: