【Java】spring MVC中定义异常页面

栏目: Java · 发布时间: 8年前

内容简介:【Java】spring MVC中定义异常页面

下面看我曾经的一个项目的spring配置文件:

<?xml version="1.0" encoding="UTF-8" ?>


<beans xmlns="http://www.springframework.org/schema/beans"


       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"


       xmlns:context="http://www.springframework.org/schema/context"


       xsi:schemaLocation="http://www.springframework.org/schema/beans


       http://www.springframework.org/schema/beans/spring-beans-3.0.xsd


       http://www.springframework.org/schema/context


       http://www.springframework.org/schema/context/spring-context-3.0.xsd">


    <!-- 扫描web包,应用Spring的注解 -->


    <context:component-scan base-package="com.xxx.training.spring.mvc"/>

 

    <!-- 配置视图解析器,将ModelAndView及字符串解析为具体的页面 -->


    <bean


            class="org.springframework.web.servlet.view.InternalResourceViewResolver"


            p:viewClass="org.springframework.web.servlet.view.JstlView"


            p:prefix="/WEB-INF/views/"


            p:suffix=".jsp"/>

 

    <!--定义异常处理页面-->


    <bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">


        <property name="exceptionMappings">


            <props>


                <prop key="java.sql.SQLException">outException</prop>


                <prop key="java.io.IOException">outException</prop>


            </props>


        </property>


    </bean>


</beans>

上面的定义异常处理部分的解释为:只要发生了SQLException或者IOException异常,就会自动跳转到WEB-INF/views/outException.jsp页面。

一般情况下我们的outException.jsp页面的代码为:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>

<html>
<head>

    <title>异常处理页面</title>

</head>
<body>

<% Exception ex = (Exception) request.getAttribute("Exception");%>

<H2>Exception:<%=ex.getMessage()%>
</H2>
</body>
</html>

当然你也可以修改样式,这个就看个人喜好了、

另外记得要在web.xml也使用类似下面的方式处理异常哦。:

<error-page>


     <error-code>404</error-code>


     <location>/WEB-INF/pages/404.jsp</location>


 </error-page>

 

 <error-page>


     <exception-type>java.lang.Exception</exception-type>


     <location>/WEB-INF/pages/exception.jsp</location>


 </error-page>

因为这两个异常处理的维度是不一样的,简单说,spring的resolver是spring内部使用的,而web。xml里的是整个webapp共同使用的。

建议两个都配置上,

因为spring的resolver可以和spring结合的更紧密,可扩展的更多。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python Cookbook

Python Cookbook

Alex Martelli、Anna Ravenscroft、David Ascher / 高铁军 / 人民邮电出版社 / 2010-5-1 / 99.00元

本书介绍了Python应用在各个领域中的一些使用技巧和方法,从最基本的字符、文件序列、字典和排序,到进阶的面向对象编程、数据库和数据持久化、 XML处理和Web编程,再到比较高级和抽象的描述符、装饰器、元类、迭代器和生成器,均有涉及。书中还介绍了一些第三方包和库的使用,包括 Twisted、GIL、PyWin32等。本书覆盖了Python应用中的很多常见问题,并提出了通用的解决方案。书中的代码和方......一起来看看 《Python Cookbook》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换