springmvc-学习总结-全局异常处理
2017-07-06 22:45
447 查看
先来个自定义异常
public class CustomException extends Exception {
//异常信息
public String message;
public CustomException(String message){
super(message);
this.message=message;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
定义全局异常处理类需要实现HandlerExceptionResolver接口:
public class CustomExceptionResolve implements HandlerExceptionResolver {
public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler,
Exception ex) {
CustomException customException=null;
if(ex instanceof CustomException){
customException = (CustomException)ex;
}else{
customException=new CustomException("未知错误");
}
ModelAndView mv = new ModelAndView("error");
mv.addObject("error", customException.getMessage());
return mv;
}
}
写一个显示异常信息的页面然后就是springmvc配置文件中声明一下全局异常处理类:
最后就是测试了:
@RequestMapping("testException1")
public void testException1() throws CustomException{
try {
int i =1/0;
} catch (Exception e) {
throw new CustomException("程序出现问题了");
}
}
@RequestMapping("testException2")
public void testException2(){
int i =1/0;
}
结果如下:
public class CustomException extends Exception {
//异常信息
public String message;
public CustomException(String message){
super(message);
this.message=message;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
定义全局异常处理类需要实现HandlerExceptionResolver接口:
public class CustomExceptionResolve implements HandlerExceptionResolver {
public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler,
Exception ex) {
CustomException customException=null;
if(ex instanceof CustomException){
customException = (CustomException)ex;
}else{
customException=new CustomException("未知错误");
}
ModelAndView mv = new ModelAndView("error");
mv.addObject("error", customException.getMessage());
return mv;
}
}
写一个显示异常信息的页面然后就是springmvc配置文件中声明一下全局异常处理类:
最后就是测试了:
@RequestMapping("testException1")
public void testException1() throws CustomException{
try {
int i =1/0;
} catch (Exception e) {
throw new CustomException("程序出现问题了");
}
}
@RequestMapping("testException2")
public void testException2(){
int i =1/0;
}
结果如下:
相关文章推荐
- springMVC学习(9)-全局异常处理
- Java 异常处理学习总结
- Java学习总结之异常处理
- springMVC学习笔记-异常处理
- MyEclipse Spring 学习总结三 SpringMVC 表单处理
- 【SpringMVC整合MyBatis】springmvc异常处理-全局异常处理器开发
- Java 异常处理学习总结
- SpringMVC配置全局日期转换器,处理日期转换异常
- SpringMVC4.x学习系列之全局异常处理
- springMVC实现全局异常处理
- SpringMVC 全局异常处理代码
- Symbian学习总结-基础篇-Symbian C++中的异常处理
- ARM处理器异常与中断处理 学习总结
- Python学习笔记总结(四)异常处理
- Unix/Linux网络编程中关于网络异常、服务器Down掉、异常信号时的处理方案【学习总结,请勿吐槽】
- SpringMVC对异常进行全局处理,并区分对待ajax和普通请求
- SEH异常处理学习总结 - ToBeroOTer的专栏 - CSDNBlog
- SpringMVC学习系列(10) 之 异常处理
- 【IOS 开发学习总结-OC-22】★objective-c——使用@try 处理异常
- Java基础学习总结---------异常Exception(3) -JVM默认如何处理异常