1 springmvc的异常处理方式,暂时我知道的两种 2 1.在controller中捕获 3 /** 4 * 捕获到异常,用于局部处理 5 * @ExceptionHandler (value={要捕获的异常,可以有多个}) 6 * @param e 7 * @param req 8 * @return 9 */ 10 @ExceptionHandler(value={UserException.class}) 11 public String handlerException(UserException e, HttpServletRequest req) 12 { 13 req.setAttribute("e", e); 14 return "error"; 15 } 16 2.在配置文件中声明 17 <!-- 18 用SimpleMappingExceptionResolver实现异常处理 19 --> 20 <bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver"> 21 <!-- 定义默认的异常处理页面,当该异常类型的注册时使用 --> 22 <property name="defaultErrorView" value="error"></property> 23 <!-- 定义异常处理页面用来获取异常信息的变量名,默认名为exception --> 24 <property name="exceptionAttribute" value="ex"></property> 25 <!-- 定义需要特殊处理的异常,用类名或完全路径名作为key,异常也页名作为值 --> 26 <property name="exceptionMappings"> 27 <props> 28 <prop key="com.kite.entity.UserException">error</prop> 29 <prop key="java.lang.Exception">error</prop> 30 </props> 31 </property> 32 </bean> 33 34 35 springmvc对静态资源的处理 36 应为在web.xml文件中配置了DispatcherServlet拦截了所有的请求,而视图解析器也全部进行了解析,那么静态的资源也会被当做视图来解析 37 那么就需要对应的处理了 38 在springmvc的配置文件增加如下代码 39 <mvc:annotation-driven /> 40 <!-- 对静态资源的处理 对/resources/下的文件及子文件进行过滤 --> 41 <mvc:resources location="/resources/" mapping="/resources/**"/>
时间: 2024-10-30 22:57:53