码迷,mamicode.com
首页 > 编程语言 > 详细

spring mvc异常统一处理(ControllerAdvice注解)

时间:2016-10-23 20:52:49      阅读:305      评论:0      收藏:1      [点我收藏+]

标签:etl   policy   except   img   get   png   项目   document   component   

@ControllerAdvice,是spring3.2提供的新注解,从名字上可以看出大体意思是控制器增强。让我们先看看@ControllerAdvice的实现:

 

Java代码  技术分享
  1. @Target(ElementType.TYPE)  
  2. @Retention(RetentionPolicy.RUNTIME)  
  3. @Documented  
  4. @Component  
  5. public @interface ControllerAdvice {  
  6.   
  7. }  

 没什么特别之处,该注解使用@Component注解,这样的话当我们使用<context:component-scan>扫描时也能扫描到.

 

@ControllerAdvice
public class ControllerExceptionHanler {
	private static Logger logger = LoggerFactory.getLogger(ControllerExceptionHanler.class);
	
	@ExceptionHandler(value=ApplicationRuntimeException.class)
	public ResponseEntity<String> handleServiceException(Exception exception, HttpServletRequest request) {
		return new ResponseEntity<String>(exception.getMessage(), HttpStatus.BAD_REQUEST);
	}
	
	@ExceptionHandler(value=Exception.class)
	@ResponseStatus(value=HttpStatus.INTERNAL_SERVER_ERROR)
	public ResponseEntity<String> handleException(Exception exception, HttpServletRequest request) {
		logger.error("系统异常!", exception);
		return new ResponseEntity<String>("操作失败,请联系管理员!", HttpStatus.INTERNAL_SERVER_ERROR);
	}
}

  

这样可以全局的管理项目的异常现象,避免的错误信息直接显示到页面的尴尬。

spring mvc异常统一处理(ControllerAdvice注解)

标签:etl   policy   except   img   get   png   项目   document   component   

原文地址:http://www.cnblogs.com/chihirotan/p/5990742.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!