使用 ResponsStatusExceptionResolver类,注解 @ResponseStatus(value=HttpStatus.FORBIDDEN,reason="测试错误提示") 返回异常
1.此注解用在类上
写异常类:
package com.cc8w.exception; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.ResponseStatus; @ResponseStatus(value=HttpStatus.FORBIDDEN,reason="测试错误提示") public class MyException extends Exception { /** * */ private static final long serialVersionUID = 1L; }
控制器抛出异常:
@RequestMapping("/getall")
public @ResponseBody List<UserEntity> getall(@RequestParam(value = "pageNum",defaultValue="1") int pageNum,@RequestParam(value = "pageSize",defaultValue="1") int pageSize) throws MyException {
PageHelper.startPage(pageNum, pageSize);
List<UserEntity> userPojo = userService.getAll();
System.out.println(userPojo);
if(pageNum==-1) {
throw new MyException();
}
return userPojo;
}

2.此注解用在方法上:
@RequestMapping("/extest")
public String exTest(@RequestParam(value = "i",defaultValue="1") int i) {
if(i==-1) {
return "redirect:error";
}
return null;
}
/**
* 自定义异常显示页面
* 使用ResponsStatusExceptionResolver,对应的注解 @ResponseStatus
*/
@RequestMapping("/error")
@ResponseStatus(value=HttpStatus.FORBIDDEN,reason="测试错误提示func")
public String exTest() {
return "error";
}
访问:http://localhost:8080/java_security/home/index/extest?i=-1
会跳转:
