简单异常处理器SimpleMappingExceptionResolver
SpringMVC已经定义好了处理器
<!--配置简单映射异常处理器-->
<bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
<property name="defaultErrorView" value="error.jsp"/>
<property name="exceptionMappings">
<map>
<entry key="com.zr.exception.MyException" value="error1.jsp"/>
<entry key="java.lang.ClassCastException" value="error2.jsp"/>
</map>
</property>
</bean>
自定义异常处理
自己定义一个类,实现HandlerExceptionResolver接口.在该类中,根据不同的异常,返回不同的信息和视图.
public class MyExceptionResolver implements HandlerExceptionResolver {
@Override
public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName(“error.jsp”);
if (ex instanceof ClassCastException) {
modelAndView.addObject(“info”, “类转换异常”);
} else if(ex instanceof MyException){
modelAndView.addObject(“info”, “自定义异常”);
}
return modelAndView;
}
}