springmvc的异常处理相关内容总结

springmvc的异常处理相关内容,步骤如下:

1)自定义异常类:

public class DefineException extends Exception {
	private static final long serialVersionUID = 1L;
	public DefineException(String message) {
		this.message = message;
	}

	private String message;
	public String getMessage() {
		return message;
	}

	public void setMessage(String message) {
		this.message = message;
	}
}

  

2)自定义异常处理器,需要实现spring提供的HandlerExceptionResolver接口类。

public class DefineExceptionResolver implements HandlerExceptionResolver {
	@Override
	public ModelAndView resolveException(HttpServletRequest request, 
			HttpServletResponse response, 
			Object handler,
			Exception ex) {
		DefineException defineException = null;
		if(ex instanceof DefineException){
			defineException = (DefineException)ex;
		}else{
			defineException = new DefineException("未知异常");
		}
		ModelAndView modelAndView = new ModelAndView();
		modelAndView.addObject("message", defineException.getMessage());
		modelAndView.setViewName("error");
		return modelAndView;
	}
}

  

3)在spring配置文件中配置自定义异常处理器类。

<!-- 自定义全局异常处理器类,实现HandlerExceptionResolver接口 -->
<bean class="cn.sjf.ssm.exception.DefineExceptionResolver" /> 

4)在dao层、services、controller根据业务要求自定义异常,并向调用的上一层抛出,最终在DispatcherServlet中调用对应的异常处理器进行处理。如下:

@RequestMapping("/editItems")
public String editItems(Model model,
    @RequestParam(value="id",required=true) Integer item_id)throws Exception{
	ItemsCustom itemsCustom = itemsService.selectByPrimaryKey(item_id);
	if(itemsCustom == null){
		throw new DefineException("修改订单信息不存在。");
	}
	return "items/editItems";
}

 以上为自定义异常、自定义异常处理器以及声明等相关处理。

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值