dubbo全局異常處理_基于spring aop的dubbo異常統一處理

dubbo統一異常處理,調用方只顯示封裝后的異常。

1、返回封裝后的Exception

2、返回封裝后的統一返回信息

import org.aspectj.lang.annotation.AfterThrowing;

import org.aspectj.lang.annotation.Aspect;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import org.springframework.stereotype.Component;

import com.midea.jr.commons.utils.BeanUtils;

import com.midea.jr.efc.edp.common.bean.Response;

import com.midea.jr.efc.edp.common.enums.ResponseCodeEnum;

import com.midea.jr.efc.edp.common.exception.BizException;

/**

*

Project:

*

Module:

*

Description:

*

* @author wangzy25

* @date 2017年6月12日 上午10:07:58

*/

@Component

@Aspect

public class DubboExceptionInterceptor {

private static final Logger LOGGER = LoggerFactory.getLogger(DubboExceptionInterceptor.class);

@AfterThrowing(throwing="ex",pointcut="execution(* com.midea.jr.efc.edp.api.service.**.*(..))")

public BizException handle(Exception ex){

LOGGER.error("Intercept dubbo exception:{}", ex.getMessage(), ex);

if(ex instanceof BizException){

throw (BizException)ex;

}

//如果是非包裝異常,則包裝成統一的內部異常

throw new BizException(ResponseCodeEnum.EXCEPTION_INTERAL);

}

@AfterThrowing(throwing="ex",pointcut="execution(* com.midea.jr.efc.edp.api.service.**.*(..))")

public Response> handle(Exception ex){

Response> response = new Response<>();

LOGGER.error("intercept ServiceException:{}", ex.getMessage(), ex);

if(ex instanceof BizException){

BeanUtils.copyProperties( ex, response );

return response;

}

//如果是非包裝異常,則包裝成統一的內部異常

return new Response<>(ResponseCodeEnum.EXCEPTION_INTERAL);

}

}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/534115.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/534115.shtml
英文地址,請注明出處:http://en.pswp.cn/news/534115.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python123平臺作業答案第十一周_馬哥2016全新Linux+Python高端運維班第十次作業

系統的INPUT和OUTPUT默認策略為DROP&#xff0c;請完成以下關于iptables的題目&#xff1b;iptables -A INPUT -d 10.18.11.13 -p tcp --dport 22 -j ACCEPT #允許ssh端口 iptables -A OUTPUT -s 10.18.11.13 -p tcp --sport 22 -j ACCEPT iptables -P OUTPUT DROP #設置OUTPUT…

義教志愿服務系統c語言,[志愿服務]以己為師 東科學子義教傳愛心

為積極響應國家教育計劃&#xff0c;豐富孩子們的暑期生活&#xff0c;進一步落實“春泥”課堂先進義教理念&#xff0c;7月12日&#xff0c;浙江海洋大學東海科學技術學院大學生“海島征程十五載&#xff0c;紅色基因永傳承”赴螞蟻島實踐團23名隊員走進螞蟻島文化禮堂&#x…

主動斷開socket鏈接_TCP連接與斷開詳解(socket通信)

http://blog.csdn.net/Ctrl_qun/article/details/52518479一、TCP數據報結構以及三次握手TCP(Transmission Control Protocol&#xff0c;傳輸控制協議)是一種面向連接的、可靠的、基于字節流的通信協議&#xff0c;數據在傳輸前要建立連接&#xff0c;傳輸完畢后還要斷開連接。…

大整數算術求值 c語言 棧,用C語言實現 多位整數的四則運算,用棧,例如56*(12+20)-102/2...

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓gets(szExpression);// 中綴表達式轉后綴表達式&#xff0c;結果保存在expression中for (int i 0; i < strlen(szExpression); i){if (isspace(szExpression[i])) // 空白字符{if (bFindBegin){expression[num].type 1;expres…

java可視化壓縮_WEB可視化技術發展

EverCraft一直在關注Web可視化技術的發展&#xff0c;本文對國外一篇感覺很不錯的綜述性文章進行翻譯&#xff0c;供這一領域的愛好者相互學習。這篇paper的信息為&#xff1a;“Mwalongo, F., et al., State-of-the-Art Report in Web-based Visualization. COMPUTER GRAPHICS…

thumbdata4刪除后果_安卓手機上巨大的.thumbdata4圖片預讀緩存清理方法

以下是目前找到比較有效的幫 .thumbdata4-文件瘦身的好方法.下面的一大堆廢話的核心就是進手機設置>應用程序>顯示系統程序>媒體存儲器>存儲>清除數據/緩存.重啟后會發現thumbdata還會出現但是沒有數GB那么大了.How do I Reset the AndroidMedia Scan Database?…

android自定義alertdialog不現實輸入法,自定義的dialog中的EditText無法彈出輸入法解決方案...

1.解決無法彈出輸入法&#xff1a;在show()方法調用之前&#xff0c;用dialog.setView(new EditText(context))添加一個空的EditText&#xff0c;由于是自定義的AlertDialog&#xff0c;有我們指定的布局&#xff0c;所以設置這個不會影響我們的功能&#xff0c;這樣就可以彈出…

python爬取微博內容_請問該如何通過python調用新浪微博的API來爬取數據?

1&#xff1a;安裝python(這個不多說啦) 2&#xff1a;下載新浪微博SDK的python包&#xff0c;解壓為weibopy目錄 3&#xff1a;申請AppKey&#xff0c; 流程&#xff1a; 1&#xff1a;通過oAuth認證 按我的理解簡化如下&#xff1a; 用戶在新浪微博給的頁面輸入賬號密碼&…

android 保活方案_Android 后臺保活手段總結 (上篇)

Android 后臺保活手段總結 (上篇)由于眾所周知的限制&#xff0c;在國內無法使用GCM推送服務&#xff0c;想要自己搭建推送服務的話&#xff0c;有兩個繞不開的技術點&#xff0c;一個是TCP長連的保活&#xff0c;另一個就是后臺進程的保活。雖然看起來是老生常談的問題&#x…

linux修改棧指針x86,為什么x86-64 Linux系統調用會修改RCX,這個值意味著什么?

我正在嘗試使用sys_brk syscall在linux中分配一些內存.這是我嘗試過的&#xff1a;BYTES_TO_ALLOCATE equ 0x08section .textglobal _start_start:mov rax, 12mov rdi, BYTES_TO_ALLOCATEsyscallmov rax, 60syscall根據linux調用約定,我希望返回值在rax寄存器中(指向已分配內存…

wordpress phpmyadmin_西部數碼使用指南:虛擬主機WordPress部署SSL注意事項

版權歸西部數碼所有&#xff0c;原文鏈接&#xff1a;https://www.west.cn/faq/list.asp?unid2068注意事項&#xff1a;1.如果您的主題/插件使用絕對地址調用了http請求可能會導致網站打開會亂碼&#xff0c;或不能有綠鎖標識&#xff0c;需要聯系程序提供商將所有http請求修改…

android html轉pdf工具,android – 使用iText庫將html轉換為pdf時未應用hr的內聯CSS

我是.NET開發人員,因此代碼在C#中.但是你應該能夠輕松翻譯以下內容.iText是一個PDF優先的庫,[X] HTML解析非常復雜,因此在這方面并不完整.每當解析[X] HTML并且事情不按預期的方式進行特定標記時,您應遵循的基本步驟是&#xff1a;>驗證XML Worker支持標記&#xff1a;Tags …

python 小說爬蟲_從零開始寫Python爬蟲 --- 1.7 爬蟲實踐: 排行榜小說批量下載

從零開始寫Python爬蟲 --- 1.7 爬蟲實踐&#xff1a; 排行榜小說批量下載Ehco 5 個月前 本來只是準備做一個爬起點小說名字的爬蟲&#xff0c;后來想了一下&#xff0c;為啥不順便把小說的內容也爬下來呢&#xff1f;于是我就寫了這個爬蟲&#xff0c;他爬下了各類小說排行榜上…

java 某個字符在字符串中出現的所有位置_Java面試常考核心概念

這篇文章專注于Java基礎知識&#xff0c;不涉及List、Map、多線程、鎖相關的內容&#xff0c;需要的可以查看我的其他博客hofes blog?hhf443.github.ioJDK&JRE&JVMJDK&#xff08;Java Development Kit&#xff09;是針對 Java 開發員的產品&#xff0c;是整個 Java 的…

lan交換和無線教師手冊_簡單幾步,無線路由器變交換機

當原來的路由器lan口不夠用&#xff0c;可以加一個交換機擴展lan口數量&#xff0c;如果需要增加的lan口數量不超過3個可以考慮找臺不用的無線路由器當交換機用。另外&#xff0c;隨著交換機更新家中都有舊無線路由器閑置&#xff0c;完全可以再次利用。下面看一下&#xff0c;…

Linux fast open,Linux內核3.7 TCP Fast Open驗證實例

Linux內核在3.6和3.7合入了TCP Fast Open特性&#xff0c;在3.7.3版本上驗證了一下&#xff0c;I did it!以下是C語言實例()&#xff1a;server端代碼&#xff1a;#include /* See NOTES */#include#include#includeint main(){int portno 5060;socklen_t clilen;char buffer[…

vue 怎么全局到入常量_Vue 中如何定義全局的變量和常量(轉)

17.6k 次閱讀 讀完需要 10 分鐘7Vue 中如何定義全局的變量和常量我想要定義一個變量, 在項目的任何地方都可以訪問到, 不需要每一次使用的時候, 都引入.嘗試1:創建 global.js 并且在其中定義let a 10;在入口文件中引入 global.jsimport ./global.js在項目中使用:a// 報錯發…

revit找不到附加模塊程序集_TensorFlow基礎知識——常用模塊(一)

1本節簡述對于開展深度學習開發的目標而言&#xff0c;我們需要掌握的除了必要的深度學習理論基礎、必要的開發依賴庫基礎知識、基本的開發套路之外&#xff0c;我們還需要掌握它常見的外圍小幫手都有哪些。這些小幫手就是深度學習依賴庫中的其他并不是核心的模塊&#xff0c;但…

android搭建opencv開發環境,Android Studio搭建opencv開發環境

文章不配圖片&#xff0c;閱讀需要有Android開發基礎并熟悉Android Studio。一、搭建基于Java開發環境以下內容介紹如何搭建基于Java jni的opencv開發環境。1、準備工作從opencv官網下載Android平臺開發sdk并解壓&#xff0c;假設解壓后文件夾名為opencv-4.3.0-android-sdk。(此…

99 網絡編程_網絡工程師技能圖譜,看看你會多少技能

技術推動了時代變革&#xff0c;互聯網則加速了這場變革。在蓬勃發展的互聯網浪潮下&#xff0c;網絡作為基礎設施的關鍵紐帶保障著網路流量的順利流通&#xff0c;維持著賽博世界的繁榮。而在這繁榮之下&#xff0c;生存著這樣一個群體——網絡工程獅&#xff0c;為網絡紐帶保…