Spring(十二)自定义异常处理器 HandlerExceptionResolver接口
1.首先创建一个类实现HandlerExceptionResolver
public class MyHandlerExceptionResolver implements HandlerExceptionResolver{
public ModelAndView resolveException(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception ex) {
ModelAndView mv=new ModelAndView();
mv.addObject("ex",ex);
if(ex instanceof NameException){
mv.setViewName("name");
}
if(ex instanceof AgeException){
mv.setViewName("age");
}
return mv;
}
}
instanceof后面是自己定义的异常类.
NameException:
public class NameException extends Exception{
public NameException() {
super();
}
public NameException(String message) {
super(message);
}
}
AgeException:
public class AgeException extends Exception{ public AgeException() { super(); } public AgeException(String message) { super(message); } }
3.配置文件
<context:component-scan base-package="cn.mvc.t14selfexception"></context:component-scan> <!--试图解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/day02/"></property> <property name="suffix" value=".jsp"></property> </bean> <bean class="cn.mvc.t14selfexception.resolver.MyHandlerExceptionResolver"></bean>
4.登陆页面:

姓名错误页面:

年龄错误页面:

浙公网安备 33010602011771号