浏览 278 次
|
该帖已经被评为新手帖
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2008-07-07
我是用spring mvc+hibernate的,在处理异常时,我目前发现有两种处理方法,
其一: <bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver"> <property name="exceptionMappings"> <props> <prop key="java.sql.SQLException">showDBError</prop> <prop key="org.springframework.web.multipart.MaxUploadSizeExceededException">maxUploadExceeded</prop> </props> </property> </bean> 用这样的处理方法的话,需要为每个异常指定一个页面,比如上面的MaxUploadSizeExceededException, 就是上传文件出现超过文件大小的异常,指定用maxUploadExceeded.jsp来处理异常,这里则可以写些友好的异常信息. 其二,自己实现HandlerExceptionResolver类,比如 public class MyHandlerExceptionResolver implements HandlerExceptionResolver { private Log log = LogFactory.getLog(getClass()); public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) { log.warn("Handle exception: " + ex.getClass().getName()); Map model = new HashMap(); model.put("ex", ex.getClass().getSimpleName()); model.put("error", ex.getMessage()); return new ModelAndView("error", model); } 但这样的话,就会把异常的原来的信息(不友好的)都显示给页面了, 大家来讨论下哪种方法好呢?或者有什么更好的方法? 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-07-20
自己顶一个,大家来探讨下
|
|
| 返回顶楼 | |


