在實際專案中,通常會對公共異常進行統一處理,另外,在前後端分離等專案中也會存在跨域問題,本文就這兩個方面做下統一說明。為了使**更統一維護,建立乙個類集中處理異常。
在com.tensquare.base.controller
中建立公共異常處理類baseexceptionhandler
。
**如下:
package com.tensquare.base.controller;
import entity.result;
import entity.statuscode;
import org.springframework.web.bind.annotation.controlleradvice;
import org.springframework.web.bind.annotation.exceptionhandler;
import org.springframework.web.bind.annotation.responsebody;
/** * created by me on 2019/6/25.
*/@controlleradvice
public class baseexceptionhandler
}
如上,當系統出現異常時,會統一處理。
首先看下,跨域是什麼?瀏覽器從乙個網域名稱的網頁去請求另乙個網域名稱的資源時,網域名稱、埠、協議任一不變通,都是跨域。
由於我們採用前後端分離開發,也是前後端分離部署,必然會存在跨域問題。
那麼,如何解決跨域呢?很簡單,只需要在controller
類上新增註解@crossorigin
即可,該註解其實是cors
的實現。
cors(cross-origin resource sharing,跨資源共享)
是w3c
出的乙個標準,其思想是使用自定義的http
頭部讓瀏覽器與伺服器進行溝通,從而決定請求或響應是成功還是失敗。
因此,要想實現cors
進行跨域,需要再伺服器進行一些設定,同時前端也需要做一些配置和分析,過多的本文就不必再描述,有興趣google
一下。
20200317 十次方 專案介紹 一
本專案前後端分離,前後端分離已經對我來說很熟悉了。就是前端開發前端,後端開發後端,中間傳json格式的資訊來完成開發。後端通過介面博暴露給前端,介面就相當於url。前端拿到json資訊對前端頁面進行渲染,完成開發。所謂微服務,就是同類容器的集合,比如老師說過的秒殺系統的時候,訊息佇列mq撐不住了。就...
十次方專案總結 2 MongoDB
mongodb是乙個基於分布式檔案儲存的資料庫,屬於非關係型資料庫 nosql 基於c 編寫。它支援的資料結構非常鬆散,是類似json的bson格式,因此可以儲存非常複雜的資料。它的特點是高效能,易部署,易使用,適合存入資料量大 寫入操作頻繁 資料價值不高的資料。mongodb的體系結構是一種邏輯結...
黑馬十次方專案day01 15之異常處理
測試根據標籤的id查詢標籤的資訊.如果id是資料庫中沒有的值,那麼返回的資訊如下 這樣的資訊返回給瀏覽器,前端是無法處理的.因此就需要對異常進行捕獲,然後按照約定result類的資訊返回給前端 在tensquare base模組的controller包下,建立異常的處理類 package com.t...