首页 > 代码库 > Spring 注解 @ExceptionHandler
Spring 注解 @ExceptionHandler
Spring 注解学习手札(一) 构建简略Web使用
Spring 注解学习手札(二) 操控层整理
Spring 注解学习手札(三) 表单页面处置
Spring 注解学习手札(四) 持久层分析
Spring 注解学习手札(五) 事务层事务处置
Spring 注解学习手札(六) 测验
Spring 注解学习手札(七) 补遗——@ResponseBody,@RequestBody,@PathVariable
Spring 注解学习手札(八) 补遗——@ExceptionHandler
直接上代码:
Java代码 保藏代码
@Controller
public class AccessController {
/**
* 反常页面操控
*
* @param runtimeException
* @return
* @页面入口地址 http://www.metabase.cn
*/
@ExceptionHandler(RuntimeException.class)
public @ResponseBody
Map runtimeExceptionHandler(RuntimeException runtimeException) {
logger.error(runtimeException.getLocalizedMessage());
Map model = new TreeMap();
model.put("status", false);
return model;
}
}
当这个Controller中任何一个办法发生反常,必定会被这个办法阻拦到。然后,输出日志。封装Map并回来,页面上得到status为false。就这么简略。
或许这个有些有些复杂,来个简略易懂的,上代码:
Java代码 保藏代码
@Controller
public class AccessController {
/**
* 反常页面操控
*
* @param runtimeException
* @return
*/
@ExceptionHandler(RuntimeException.class)
public String runtimeExceptionHandler(RuntimeException runtimeException,
ModelMap modelMap) {
logger.error(runtimeException.getLocalizedMessage());
modelMap.put("status", IntegralConstant.FAIL_STATUS);
return "exception";
}
}