Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 带注释控制器的HandlerExceptionResolver_Spring_Exception Handling_Controller - Fatal编程技术网

Spring 带注释控制器的HandlerExceptionResolver

Spring 带注释控制器的HandlerExceptionResolver,spring,exception-handling,controller,Spring,Exception Handling,Controller,我已经注释了控制器,它包含几个映射到URL上的methind。像这样: @Controller public class CategoryController { @RequestMapping(value = "/addCategories") public void addCategories(@RequestParam(value = "data") String jsonData) throws ParseException @RequestMapping(value = "/get

我已经注释了控制器,它包含几个映射到URL上的methind。像这样:

@Controller
public class CategoryController {

@RequestMapping(value = "/addCategories")
public void addCategories(@RequestParam(value = "data") String jsonData) throws ParseException

@RequestMapping(value = "/getNext")
public void getNext(@RequestParam(value = "data") String jsonData) throws ParseException

...

}
方法需要解析json请求并执行一些操作。解析请求可能会产生checked
ParseException
,我可以在方法中处理该异常,或者将
throws
添加到其签名中。我更喜欢第二种方法,因为在这种情况下,我不需要额外的try/catch代码。
所以问题是如何为控制器方法配置和编码处理程序?

您应该查看spring文档以了解更多信息


或者,如果要为所有控制器处理这些异常,则在xml配置中创建子类并将其声明为spring mvc bean。

如果要跳过xml配置,则创建子类AbstractHandlerExceptionResolver并使用@Component对其进行注释。
@Controller
public class CategoryController {

@ExceptionHandler(ParseException.class)
public ModelAndView handleParseExc(ParseException ex) {
  //...
}

@RequestMapping(value = "/addCategories")
public void addCategories(@RequestParam(value = "data") String jsonData) throws ParseException


}