精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

只需一步,在Spring Boot中統一Restful API返回值格式與統一處理異常

開發 后端
在前后端分離大行其道的今天,有一個統一的返回值格式不僅能使我們的接口看起來更漂亮,而且還可以使前端可以統一處理很多東西,避免很多問題的產生。

 

統一返回值

在前后端分離大行其道的今天,有一個統一的返回值格式不僅能使我們的接口看起來更漂亮,而且還可以使前端可以統一處理很多東西,避免很多問題的產生。

比較通用的返回值格式如下: 

  1. public class Result<T> {  
  2.     // 接口調用成功或者失敗  
  3.     private Integer code = 0 
  4.     // 失敗的具體code  
  5.     private String errorCode = "" 
  6.     // 需要傳遞的信息,例如錯誤信息  
  7.     private String msg;  
  8.     // 需要傳遞的數據  
  9.     private T data;  
  10.     ...  

最原始的接口如下:   

  1. @GetMapping("/test")  
  2.     public User test() {  
  3.         return new User();  
  4.     } 

當我們需要統一返回值時,可能會使用這樣一個辦法: 

  1. @GetMapping("/test")  
  2.   public Result test() {  
  3.       return Result.success(new User());  
  4.   } 

這個方法確實達到了統一接口返回值的目的,但是卻有幾個新問題誕生了:

  •  接口返回值不明顯,不能一眼看出來該接口的返回值。
  •  每一個接口都需要增加額外的代碼量。

所幸Spring Boot已經為我們提供了更好的解決辦法,只需要在項目中加上以下代碼,就可以無感知的為我們統一全局返回值。 

  1. /**  
  2.  * 全局返回值統一封裝  
  3.  */  
  4. @EnableWebMvc  
  5. @Configuration  
  6. public class GlobalReturnConfig {  
  7.     @RestControllerAdvice  
  8.     static class ResultResponseAdvice implements ResponseBodyAdvice<Object> {  
  9.         @Override  
  10.         public boolean supports(MethodParameter methodParameter, Class<? extends HttpMessageConverter<?>> aClass) {  
  11.             return true;  
  12.         }  
  13.         @Override  
  14.         public Object beforeBodyWrite(Object body, MethodParameter methodParameter, MediaType mediaType, Class<? extends HttpMessageConverter<?>> aClass, ServerHttpRequest serverHttpRequest, ServerHttpResponse serverHttpResponse) { 
  15.              if (body instanceof Result) {  
  16.                 return body;  
  17.             }  
  18.             return new Result(body);  
  19.         }  
  20.     }  

而我們的接口只需要寫成最原始的樣子就行了。 

  1. @GetMapping("/test")  
  2.  public User test() {  
  3.      return new User();  
  4.  } 

統一處理異常

將返回值統一封裝時我們沒有考慮當接口拋出異常的情況。當接口拋出異常時讓用戶直接看到服務端的異常肯定是不夠友好的,而我們也不可能每一個接口都去try/catch進行處理,此時只需要使用@ExceptionHandler注解即可無感知的全局統一處理異常。 

  1. @RestControllerAdvice  
  2. public class GlobalExceptionHandler {  
  3.     private static final Logger LOG = LoggerFactory.getLogger(GlobalExceptionHandler.class);  
  4.     /**  
  5.      * 全局異常處理  
  6.      */  
  7.     @ExceptionHandler  
  8.     public JsonData handleException(HttpServletRequest request, HttpServletResponse response, final Exception e) {  
  9.         LOG.error(e.getMessage(), e);  
  10.         if (e instanceof AlertException) {//可以在前端Alert的異常  
  11.             if (((AlertException) e).getRetCode() != null) {//預定義異常  
  12.                 return new Result(((AlertException) e).getRetCode());  
  13.             } else {  
  14.                 return new Result(1, e.getMessage() != null ? e.getMessage() : "");  
  15.             }  
  16.         } else {//其它異常  
  17.             if (Util.isProduct()) {//如果是正式環境,統一提示  
  18.                 return new Result(RetCode.ERROR);  
  19.             } else {//測試環境,alert異常信息 
  20.                  return new Result(1, StringUtils.isNotBlank(e.getMessage()) ? e.getMessage() : e.toString());  
  21.             }  
  22.         }  
  23.     }  

其中的AlertException為我們自定義的異常,因此當業務中需要拋出錯誤時,可以手動拋出AlertException。

以上就是統一處理返回值和統一處理異常的兩步。

 

 

責任編輯:龐桂玉 來源: segmentfault
相關推薦

2025-02-13 00:34:22

Spring對象系統

2024-08-09 08:25:32

Spring流程注解

2023-12-05 14:10:00

接口可讀性

2020-05-26 13:48:05

后端框架異常

2023-11-28 14:32:04

2024-10-28 08:32:22

統一接口響應SpringBoot響應框架

2024-09-25 08:10:00

Spring后端

2017-05-18 14:14:25

過濾器Spring ClouZuul

2021-04-30 07:34:01

Spring BootController項目

2022-08-31 08:19:04

接口returnCode代碼

2024-08-01 09:10:03

2017-05-19 15:13:05

過濾器Spring ClouZuul

2017-07-31 15:47:50

Zuul統一處理

2023-11-30 07:00:56

SpringBoot處理器

2022-05-30 08:03:06

后端參數校驗異常處理

2009-06-22 10:41:34

Spring.AOP

2022-05-07 10:09:01

開發Java日志

2019-09-29 10:23:09

APIJava編程語言

2025-04-09 08:00:00

FastAPI統一響應全局異常處理

2010-06-13 10:19:16

統一計算私有云
點贊
收藏

51CTO技術棧公眾號

久久嫩草捆绑紧缚| 亚洲国产精品久久久久婷蜜芽| 国产精品毛片一区视频播| 综合久久精品| 亚洲精品国产精品久久清纯直播| 国产精品自拍片| 国产粉嫩一区二区三区在线观看| 蜜臀av一区二区三区| 欧美久久精品午夜青青大伊人| 亚州av综合色区无码一区| 黑人精品一区| 一区二区三区.www| 日韩中文字幕一区| 狠狠躁夜夜躁av无码中文幕| 日韩精品久久久久久| 久久99精品久久久久久噜噜| av男人的天堂av| 国产成人一二片| 欧美日韩精品高清| 99爱视频在线| 人妖欧美1区| 国产精品视频免费| 精品一区二区三区国产| 国产一区二区自拍视频| 久久久精品五月天| 久久久久久久久久亚洲| 精品丰满少妇一区二区三区| 欧美久久香蕉| 精品美女在线观看| 午夜激情视频网| 999国产精品亚洲77777| 欧美日韩在线视频一区| 久久99久久久久久| caopeng在线| 国产精品视频第一区| 日本午夜精品一区二区三区| 嫩草影院一区二区| 国产成人免费在线| 成人一区二区电影| 一二三区在线播放| 免费av成人在线| 国产精品精品视频| 丰满少妇xoxoxo视频| 亚洲精品精选| 91精品国产高清久久久久久久久| 欧美成人精品一区二区免费看片| 欧美韩国日本在线观看| 成人毛片视频免费看| 精品视频在线观看网站| 欧美视频一区二区| 欧美三级理论片| 欧美电影免费看| 欧美日韩日本国产| 欧美三级一级片| 免费一二一二在线视频| 亚洲成人av一区二区三区| 亚洲乱码日产精品bd在线观看| 国产在线看片| 亚洲老司机在线| av 日韩 人妻 黑人 综合 无码| 黄色大片在线播放| 亚洲嫩草精品久久| 中文字幕人妻熟女人妻洋洋| 青春草免费在线视频| 怡红院av一区二区三区| 高清无码视频直接看| av美女在线观看| 欧美日韩在线看| 亚洲国产精品三区| 亚洲影视资源| 精品捆绑美女sm三区| 日本国产在线视频| 视频一区在线观看| 日韩中文字幕视频在线| 免费在线黄色网| 亚洲午夜av| 秋霞午夜一区二区| 91麻豆国产视频| 国产精品一区二区在线看| 国产精品久久久久久久免费大片| 婷婷综合激情网| 国产日韩欧美一区二区三区乱码 | 外国成人在线视频| 亚洲欧美一区二区激情| 99精品全国免费观看| 伊人青青综合网| 91精品国产免费久久久久久 | 亚洲国产精品热久久| 在线免费观看日韩av| 91一区二区三区四区| 久久男人的天堂| 最近中文字幕在线观看| 国产精品中文欧美| 欧美精品亚洲| 羞羞视频在线观看不卡| 欧美视频免费在线| 交换做爰国语对白| 欧美91在线| 精品精品国产国产自在线| 日韩免费不卡视频| 精品一区二区在线视频| 精品在线不卡| 久做在线视频免费观看| 欧美日韩一区二区精品| 国产5g成人5g天天爽| 伊人久久大香线蕉| 蜜臀久久99精品久久久久久宅男 | 一区不卡字幕| 三级在线观看视频| 91精品国产福利在线观看| 亚洲国产欧美视频| 国产专区一区| 国产欧美日韩中文字幕| 五月婷婷六月激情| 亚洲激情五月婷婷| 天天操,天天操| 日韩欧美国产大片| 欧美国产日韩视频| 91高潮大合集爽到抽搐| 久久人人爽人人爽| 亚洲不卡中文字幕无码| 伊人精品综合| 久久国产一区二区三区| 免费黄色小视频在线观看| 成人av一区二区三区| 97av中文字幕| 国产精品亚洲一区二区在线观看 | 久久国产在线视频| 久久国产尿小便嘘嘘| 欧美日韩免费高清| 极品在线视频| 亚洲国产成人av在线| 麻豆视频在线观看| 国产精品资源在线观看| 亚洲最新免费视频| 成人免费黄色| 伊人久久五月天| 丰满少妇xoxoxo视频| 99re8在线精品视频免费播放| 国产一区二区三区在线免费| 精品国模一区二区三区欧美| 色偷偷av亚洲男人的天堂| 波多野结衣人妻| 国产欧美日韩在线看| www日韩在线观看| 国产精品嫩模av在线| 日本国产欧美一区二区三区| 日本国产在线| 色综合天天综合网天天狠天天| 国产精品久久久久久久无码| 国产精品入口66mio| 国模一区二区三区私拍视频| 麻豆视频在线看| 日韩风俗一区 二区| 亚洲久久在线观看| 成人久久视频在线观看| av免费观看国产| 中文字幕亚洲影视| 国产精品高潮呻吟久久av野狼 | 欧美中文在线观看| 欧美大片aaa| 欧美色图在线观看| 在线日韩国产网站| 国产不卡免费视频| jizzjizz国产精品喷水| 九九热爱视频精品视频| 国产精品黄视频| 久久久久久久久免费视频| 91精品国产91热久久久做人人| 中文字幕电影av| 成人一区在线看| 久草精品在线播放| 欧美oldwomenvideos| 91青青草免费在线看| 草美女在线观看| 亚洲欧美视频在线| 99久久精品日本一区二区免费| 一区二区高清免费观看影视大全 | 国产精品污视频| 亚洲已满18点击进入久久| 免费看黄色aaaaaa 片| 免费成人美女在线观看.| 粉嫩av一区二区三区天美传媒| 美国成人xxx| 国产精品久久中文| 在线播放国产精品| 亚洲国产综合网| 91九色02白丝porn| 欧美日韩在线观看免费| www精品美女久久久tv| 中文字幕视频三区| 亚洲伦伦在线| 亚洲一区不卡在线| 美女一区二区在线观看| 国产精品视频内| www.8ⅹ8ⅹ羞羞漫画在线看| 在线国产精品视频| 成人午夜免费福利| 欧美色图免费看| 国产精品美女毛片真酒店| 日本一区免费视频| 亚洲天堂美女视频| 国产一区高清在线| 国产xxxxx视频| 一区在线免费| 一区二区日本伦理| 国产精品密蕾丝视频下载| 99久久精品免费看国产四区| 亚洲成人av观看| 国产69精品久久久久99| 美女免费久久| 国产一区二区日韩| 少妇无码一区二区三区| 91精品中文字幕一区二区三区| 精品免费囯产一区二区三区| 亚洲一级二级在线| 国产免费美女视频| 国产欧美精品日韩区二区麻豆天美| 中文字幕制服丝袜| 激情五月激情综合网| 男女啪啪网站视频| 国产日韩亚洲| 久青草视频在线播放| 99精品美女| 亚洲7777| av资源久久| 日本视频一区在线观看| 夜色77av精品影院| 精品视频在线观看| 国产精品欧美大片| 成人免费看片网站| 精品国产亚洲一区二区在线观看 | 欧美日韩三级电影在线| 最新精品视频| 99精品电影| 一区中文字幕在线观看| 日韩在线观看电影完整版高清免费悬疑悬疑 | 成人毛片一区二区三区| 欧美性猛交xxxx乱大交极品| 日韩精品一区二区三区国语自制| 亚洲在线视频免费观看| 欧美黑人精品一区二区不卡| 亚洲精品一二三| 精品国产视频一区二区三区| 国产精品国产三级国产普通话蜜臀| 日本激情小视频| 国产人妖乱国产精品人妖| 欧美做受xxxxxⅹ性视频| 久久久久久久综合色一本| 插吧插吧综合网| 久久一区二区视频| 51妺嘿嘿午夜福利| 国产日产亚洲精品系列| 在线免费观看视频| 亚洲欧洲日本在线| 欧美成人精品一区二区免费看片| 一个色综合av| 久久夜色精品亚洲| 色呦呦网站一区| 中国女人真人一级毛片| 欧美三级韩国三级日本一级| 国产精品系列视频| 日韩西西人体444www| 欧美一区二不卡视频| 亚洲精品资源在线| youjizz在线播放| 久久精品男人天堂| 91美女精品| 国产99视频精品免视看7| 国产精品一区二区免费福利视频| 成人免费网站在线看| 亚洲精品一二三**| 免费精品视频一区| 欧美a级成人淫片免费看| 青青在线视频免费观看| 亚洲一区图片| www.se五月| 成人久久18免费网站麻豆 | 青青草原国产在线视频| 国产成人精品亚洲午夜麻豆| 国产在线观看无码免费视频| 国产精品国产三级国产专播品爱网| 免费又黄又爽又色的视频| 黑人巨大精品欧美一区二区免费| 久久久精品国产亚洲| 在线免费黄色| 久久久久久久久久久免费| 欧美最新精品| 91在线播放视频| 国产精品视频一区二区三区四蜜臂| 久久免费看毛片| 亚洲免费一区二区| 日韩av福利在线观看| 91老司机福利 在线| 182在线观看视频| 欧美小视频在线| www.成人免费视频| 夜夜嗨av一区二区三区免费区| 在线免费观看的av| 国产精品久久久av久久久| 999久久精品| 亚洲国产午夜伦理片大全在线观看网站 | 午夜精品福利在线视频| 欧美视频精品一区| 国产高清第一页| 伊人久久久久久久久久| 人在线成免费视频| 91成人免费在线观看| 日韩大片在线| 亚洲中文字幕无码不卡电影| 国产成人精品影院| 亚洲综合久久av一区二区三区| 日韩欧美在线观看视频| 成人午夜免费福利| 久久成人综合视频| 国产综合av| 久久久久久亚洲精品不卡4k岛国| 中文字幕乱码亚洲无线精品一区 | 欧洲一级精品| 国产精品一区二区欧美| 中文字幕一区二区三区欧美日韩| 亚洲一区二区蜜桃| 97se亚洲国产综合在线| 一级黄色录像视频| 欧美男女性生活在线直播观看| 国产视频二区在线观看| 欧亚精品在线观看| 久久夜色精品国产噜噜av小说| 路边理发店露脸熟妇泻火| 蜜乳av一区二区| 日韩一级av毛片| 91极品视觉盛宴| 免费在线超碰| 日本精品中文字幕| 亚洲第一论坛sis| av7777777| 99国产精品国产精品毛片| 日韩精品久久久久久久| 亚洲精品国产拍免费91在线| 成人免费高清观看| 国产日韩久久| 亚洲精品一级| 久久久久成人精品无码中文字幕| 亚洲高清三级视频| 蜜臀av中文字幕| 97在线看福利| 一道在线中文一区二区三区| 99精品视频在线看| 久久五月婷婷丁香社区| 日干夜干天天干| 日韩精品视频中文在线观看| 女厕盗摄一区二区三区| 精品国产一区二区三| 亚洲尤物在线| 无码少妇精品一区二区免费动态| 91久久国产综合久久| 97最新国自产拍视频在线完整在线看| 国产精品国语对白| 99国产精品一区二区| 国产精品久久久久野外| 亚洲自拍偷拍麻豆| 丰满少妇被猛烈进入| 3344国产精品免费看| 精品在线播放| 手机看片福利日韩| 亚洲欧美在线观看| 午夜久久久久久噜噜噜噜| 久久免费精品视频| 久草成人在线| 看看黄色一级片| 一区二区三区日本| 亚洲色图 校园春色| 国产精品久久一| 欧美日韩天堂| 一区二区伦理片| 91精品一区二区三区久久久久久| 国产经典三级在线| 日本一区高清不卡| 国产一区二区三区免费看| 日韩成人av毛片| 中文字幕亚洲欧美| caoporn成人免费视频在线| 国产精品-区区久久久狼| 国产精品灌醉下药二区| 黑人精品一区二区| 国产成人精品最新| 欧美激情综合色综合啪啪| 免费成人蒂法网站| 欧美日韩国产综合一区二区三区 | 亚洲一区二区成人在线观看| 久久精品国产亚洲a∨麻豆| 7777精品久久久大香线蕉小说 | 嫩草视频免费在线观看| 亚洲一区二三区| 懂色一区二区三区| 国产精品一区二区三区精品| 日本欧美久久久久免费播放网| 日本三级黄色大片| 色妞一区二区三区| 偷拍精品福利视频导航|