springmvc实现404,500的配置实战
1.页面准备:我们在webapp/views/common/error(目录自己定)新建我们自定义的错误页面,404.html, 500.html等等。
2.SimpleMappingExceptionResolver只实现映射关系,我们还需要通过配置WEB-INF/web.xml来实现。
<error-page>
<error-code>404</error-code>
<location>/error/404.html</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/error/500.html</location>
</error-page>
3.在spring-mvc配置文件中将404.html、500.html等设置为资源文件,避免被springmvc再次拦截。
<mvc:resources mapping="/error/**" location="/views/common/error/" />
4.配置SimpleMappingExceptionResolver
<bean class="org.springframework.web.servlet.handler. SimpleMappingExceptionResolver">
<property name="exceptionMappings">
<map>
<entry key="ResourceNotFoundException" value="common/error/resourceNotFoundError" />
<entry key=".DataAccessException" value="common/error/dataAccessError" />
</map>
</property>
<property name="statusCodes">
<map>
<entry key="common/error/resourceNotFoundError" value="404" />
<entry key="common/error/dataAccessError" value="500" />
</map>
</property>
</bean>
到此,就实现我们需要的配置了
1.页面准备:我们在webapp/views/common/error(目录自己定)新建我们自定义的错误页面,404.html, 500.html等等。
2.SimpleMappingExceptionResolver只实现映射关系,我们还需要通过配置WEB-INF/web.xml来实现。
<error-page>
<error-code>404</error-code>
<location>/error/404.html</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/error/500.html</location>
</error-page>
3.在spring-mvc配置文件中将404.html、500.html等设置为资源文件,避免被springmvc再次拦截。
<mvc:resources mapping="/error/**" location="/views/common/error/" />
4.配置SimpleMappingExceptionResolver
<bean class="org.springframework.web.servlet.handler. SimpleMappingExceptionResolver">
<property name="exceptionMappings">
<map>
<entry key="ResourceNotFoundException" value="common/error/resourceNotFoundError" />
<entry key=".DataAccessException" value="common/error/dataAccessError" />
</map>
</property>
<property name="statusCodes">
<map>
<entry key="common/error/resourceNotFoundError" value="404" />
<entry key="common/error/dataAccessError" value="500" />
</map>
</property>
</bean>
到此,就实现我们需要的配置了