SpringMVC之ResponseStatus
ResponseStatus是由SpringMVC提供的一个注解,可以标注在异常处理方法上,也可以标注在异常类上,用来指定在SpringMVC处理请求的过程中抛出了指定的异常时将响应给客户端的状态码和错误信息。比如我们希望在抛出了IllegalArgumentException时响应给客户端的状态码是502,错误信息是Hello Error
,我们就可以像如下这样,在异常处理方法上加上@ResponseStatus
注解,同时指定错误码和错误信息,此时的ResponseStatus注解将在ServletInvocableHandlerMethod的initResponseStatus方法中进行处理。
@ControllerAdvice(annotations=RestController.class)
public class MyExceptionHandler {
@ExceptionHandler(IllegalArgumentException.class)
@ResponseStatus(value=HttpStatus.BAD_GATEWAY, reason="Hello Error")
public void handleIllegalArgumentException() {
}
}
在没有使用异常处理器方法的情况下,如果异常类的源码是我们可以自己进行控制的,也可以在异常类上加上@ResponseStatus
注解指定错误码和错误信息。此时的ResponseStatus注解将由ResponseStatusExceptionResolver进行处理。
@ResponseStatus(value=HttpStatus.BAD_GATEWAY, reason="Hello Error")
public class ResponseStatusException extends RuntimeException {
/**
*
*/
private static final long serialVersionUID = 6644585920167208469L;
}
(注:本文是基于Spring4.1.0所写)
相关推荐
springmvc的rest风格的增删改查,适合springmvc的新手
自留demo。springMVC-HttpEntity(ResponseEntity)与jQuery交互的小结demo。
springmvc是常用的一种框架,学习springmvc非常重要,故需要良好教程资料
这是一个使用SpringMVC实现用户管理的简单案例,增加初学者的认识和理解
springmvc之@RequestMapping的简单demo
springmvc 笔记
springmvc基础 包含代码+知识点+详细解释 1. 什么是springmvc? 2. springmvc框架原理 前端控制器、处理器映射器、处理器适配器、视图解析器 3. springmvc入门程序 目的:对前端控制器、处理器映射器、处理器...
SpringMVC笔记.pdf
传智 springmvc mybatis 燕青 笔记 教案 springmvc部分
基于springmvc实现分页查询基于springmvc实现分页查询
springMvc源码分析springMvc源码分析springMvc源码分析springMvc源码分析springMvc源码分析springMvc源码分析
开发步骤①导入SpringMVC相关坐标②配置SpringMVC核心控制器DispathcerServlet③创建Controller类和视图页面④使用注解配置Controller类中业务方法的映射地址⑤配置SpringMVC核心文件 spring-mvc.xml⑥客户端发起...
SpringMVC 实例
springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo springmvc 环境搭建 demo ...
这是一个简单的springmvc连接数据库的,在xml文件中配置数据库连接,适合初学springmvc,简单易懂
springMVC集成lucene完整代码
使用Eclipse创建Maven项目,并利用springMvc创建web项目,并实现Helloword
1、什么是 SpringMvc? 2、Spring MVC 的优点: 3、SpringMVC 工作原理? 4、SpringMVC 流程? 6、SpringMvc 的控制器是不是单例模式,如果是,有什么问题,怎么解决? 7、如果你也用过 struts2.简单介绍下 springMVC ...
springmvc带进度条上传源码
springMvc整合hibernate Demo