本篇文章给大家带来的内容是关于如何使用Spring MVC显示自定义的404 Not Found页面,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

不知道大家对千篇一律的404 Not Found的错误页面是否感到腻歪了?其实通过很简单的配置就能够让Spring MVC显示您自定义的404 Not Found错误页面。

在WEB-INF的web.xml里添加一个新的区域:

意思是一旦有404错误发生时,显示resouces文件夹下的404.jsp页面。

404

/resources/404.jsp

现在可以随意开发您喜欢的个性化404错误页面了。

完毕之后,随便访问一个不存在的url,故意造成404错误,就能看到我们刚才配置的自定义404 Not Found页面了。

如果想在Spring MVC里实现一个通用的异常处理逻辑(Exception handler), 能够捕捉所有类型的异常,比如通过下面这种方式抛出的异常,可以按照下面介绍的步骤来做。

1. 新建一个类,继承自SimpleMappingExceptionResolver:public class GlobalDefaultExceptionHandler extends

SimpleMappingExceptionResolver {

public GlobalDefaultExceptionHandler(){

System.out.println("GlobalDefaultExceptionHandler constructor called!");

}

@Override

public String buildLogMessage(Exception ex, HttpServletRequest request) {

System.out.println("Exception caught by Jerry");

ex.printStackTrace();

return "Spring MVC exception: " + ex.getLocalizedMessage();

}

2. 在Spring MVC的Servlet配置文件里,将刚才创建的类作为一个Bean配置进去:

Bean的ID设置为simpleMappingExceptionResolver,class设置为步骤一创建的类的包含namespace的全名。创建一个名为defaultErrorView的property,其value为generic_error, 指向一个JSP view:generic_error.jsp。

generic_error.jsp的源代码:

pageEncoding="UTF-8"%>

Generic Error Page of Jerry

Unknown Error Occured, please contact Wang, Jerry.

现在可以做测试了。我之前通过下列语句抛了一个异常:throw new Exception("Generic Exception raised by Jerry");

这个异常成功地被我自己实现的异常处理类捕捉到,并显示出我自定义的异常显示页面:

java怎么设置404界面_如何使用Spring MVC显示自定义的404 Not Found页面相关推荐

  1. 如何让Spring MVC显示自定义的404 Not Found页面

    不知道大家对千篇一律的404 Not Found的错误页面是否感到腻歪了?其实通过很简单的配置就能够让Spring MVC显示您自定义的404 Not Found错误页面. 在WEB-INF的web. ...

  2. spring mvc 中静态资源404、302错误

    [求教]spring mvc 中静态资源404.302错误 (2019/3/22补充)在新的项目中也偶尔遇到资源被拦截的情况(前提我已经设置了各种静态资源不被拦截的措施),至今仍然没能找到具体原因,所 ...

  3. java自定义标签 map_基于Spring MVC的自定义标签Tag

    基于Spring MVC的自定义标签Tag 1.环境准备 本次小项目基于Spring MVC进行测试呈现,项目依赖的jar文件列表如下: 2.搭建SpringMVC Spring MVC环境最关键的两 ...

  4. Java 启动和停止界面_我的世界Java版1.16.4-pre2游戏下载-我的世界Java版1.16.4-pre2中文版下载...

    我的世界Java版是一款可以让玩家自由发挥自己创造力的像素沙盒类游戏,在这款游戏中玩家就是一片天地的造物主,玩家可以把现实中一切的建筑都完美的复刻在这款游戏里,如此好玩的游戏,玩家还在等什么,快来下载 ...

  5. java登录页-视图界面_地图界面-Java集合

    java登录页-视图界面 A Map stores data in key and value association. Both key and values are objects. The ke ...

  6. Java Spring MVC 和 REST 处理404等异常的不同

    第一, 需要注意Spring MVC 和 Spring Rest两种情况下的区别. Spring MVC是可以通过增加/error的handler来处理异常的, 而REST却不行,因为在spring ...

  7. java 时间格式化_彻底解决Spring mvc中时间的转换和序列化等问题

    痛点 在使用Spring mvc 进行开发时我们经常遇到前端传来的某种格式的时间字符串无法用java8的新特性java.time包下的具体类型参数来直接接收. 我们使用含有java.time封装类型的 ...

  8. java性能最好的mvc框架_详解Spring MVC的异步模式(高性能的关键)

    什么是异步模式 要知道什么是异步模式,就先要知道什么是同步模式,先看最典型的同步模式: 浏览器发起请求,Web服务器开一个线程处理,处理完把处理结果返回浏览器.好像没什么好说的了,绝大多数Web服务器 ...

  9. mysql中鼠标光标消失了_为什么我这里没有显示鼠标的悬停可改变页面颜色,以为什么我加载了mysql的jar文件还是不能显示报表的内容呢?...

    源自:3-6 JSP页面实现 为什么我这里没有显示鼠标的悬停可改变页面颜色,以为什么我加载了mysql的jar文件还是不能显示报表的内容呢? 首先是index.jsp pageEncoding=&qu ...

最新文章

  1. python两台电脑文件传输_python实现简单socket程序在两台电脑之间传输消息的方法...
  2. 通用makefile
  3. 数字中国建设再提速,智慧金融发展如何跑出“加速度”?
  4. Android 智能问答机器人的实现
  5. Spark学习之路 (五)Spark伪分布式安装
  6. WebRTC 的 log 系统实现分析
  7. AAAIT学院JDK15新特性历史
  8. 基于 Spring Security 的开源统一角色访问控制系统 URACS
  9. ggplot2设置坐标轴范围_R语言数据可视化| ggplot2中会“分身术”的facet_wrap()与facet_grid()...
  10. django request对象和HttpResponse对象
  11. 网络通信 public ip 和 private ip
  12. 数据传输服务 DTS > 产品简介 > 功能特性 > 数据订阅(旧版)
  13. android用户界面-事件处理
  14. mysql的远程服务开启_mysql开启远程服务
  15. php 发送图片,php+curl 发送图片处理代码分享
  16. HTML动态分页函数
  17. 哔哩哔哩手机缓存的m4s音频和视频文件电脑观看?
  18. JetBrains Rider 软件使用快速入门
  19. [BZOJ3144]切糕
  20. iTEST平台成绩查询代码

热门文章

  1. 开放共赢,华为云WeLink生态联盟正式成立!
  2. 一场高质量的技术盛会怎样炼成?「2019中国大数据技术大会」即将来临,邀您共赴!...
  3. 2019年容器安全最新现状研究报告解读
  4. [重磅] 如何更好地实现服务调用和消息推送
  5. element 方法返回的boolean被当成字符串了_JavaScript 原生对象、属性、方法、事件、事件参数...
  6. 工作流实战_03_flowable 流程模板部署
  7. 通用mapper 如何处理多表条件查询通过list封装(一对多)
  8. java解决导出word用wps打开正常,用office打开是html的标签的问题
  9. oracle 12.2 启用分片,关于Oracle Sharding,你想知道的都在这里
  10. joi模块验证日期格式_python datetime模块详解