當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
SpringMVC 全局异常处理,返回json
生活随笔
收集整理的這篇文章主要介紹了
SpringMVC 全局异常处理,返回json
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
1.在spring-mvc.xml中增加配置:
比如我的freemarker視圖定義的是:/WEB-INF/template
我的頁面則放在template下的common目錄下,所以下方定義的是common/500,文件擴展名根據視圖定義可以忽略
<mvc:annotation-driven /><!--全局異常輸出 --><bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver"><property name="exceptionMappings"><props><prop key="java.lang.Exception">common/500</prop></props></property><property name="statusCodes"><props><prop key="common/500">500</prop></props></property><!-- 設置日志輸出級別,不定義則默認不輸出警告等錯誤日志信息 --><property name="warnLogCategory" value="WARN"></property><!-- 默認錯誤頁面,當找不到上面mappings中指定的異常對應視圖時,使用本默認配置 --><property name="defaultErrorView" value="common/500"></property><!-- 默認HTTP狀態碼 --><property name="defaultStatusCode" value="500"></property></bean>2.配置界面返回
根據自己的頁面視圖,在對應目錄下增加文件,這里我采用的是freemarker,返回標準的json串
"code": 500, "msg": "系統異常,請聯系管理員", "data": {<#assign errs=Request["exception"].getStackTrace()![]><#list errs as err><#assign className=Request["exception"].getStackTrace()[err_index].getClassName()!""><#if className?contains("Controller") || className?contains("Service")>"Exception Type":"${Request["exception"].getClass()}","Class Path":"${Request["exception"].getStackTrace()[err_index].getClassName()!""}","Class Name":"${Request["exception"].getStackTrace()[err_index].getFileName()!""}","Error Line":"${Request["exception"].getStackTrace()[err_index].getLineNumber()!""}","Method Name":"${Request["exception"].getStackTrace()[err_index].getMethodName()!""}","-----------------------------------------------------------------------",<br/></#if></#list>} }3.效果圖
{"code": 500,"msg": "系統異常,請聯系管理員","data": {"Exception Type": "class java.lang.NullPointerException","Class Path": "com.aliyun.web.user.UserController","Class Name": "UserController.java","Error Line": "57","Method Name": "queryList","-----------------------------------------------------------------------",} }?
轉載于:https://my.oschina.net/gmupload/blog/2247133
總結
以上是生活随笔為你收集整理的SpringMVC 全局异常处理,返回json的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信小程序组件间通信(二)
- 下一篇: 洛谷P2221 [HAOI2012]高速