web.xml文件 <!-- 404 页面不存在错误 --> <error-page> <error-code>404</error-code> <location>/error.jsp</location> </error-page> <!-- 500 服务器内部错误 --> <error-page> <error-code>500</error-code> <location>/error.jsp</location> </error-page> <!-- java.lang.Exception异常错误,依据这个标记可定义多个类似错误提示 --> <error-page> <exception-type>java.lang.Exception</exception-type> <location>/error.jsp</location> </error-page>
错误页面 404.jsp: <%@ page contentType="text/html; charset=UTF-8" %> <%@ page import="java.io.*" %> <%@ page import="java.util.*" %> <html> <header> <title>404 page</title> <body> <pre> <% Enumeration<String> attributeNames = request.getAttributeNames(); while (attributeNames.hasMoreElements()) { String attributeName = attributeNames.nextElement(); Object attribute = request.getAttribute(attributeName); out.println("request.attribute['" + attributeName + "'] = " + attribute); } %> </pre>
异常处理页面 exception.jsp: <%@ page contentType="text/html; charset=UTF-8" isErrorPage="true" %> <%@ page import="java.io.*" %> <html> <header> <title>exception page</title> <body> <hr/> <pre> <% response.getWriter().println("Exception: " + exception); if(exception != null) { response.getWriter().println("<pre>"); exception.printStackTrace(response.getWriter()); response.getWriter().println("</pre>"); } response.getWriter().println("<hr/>"); %> 注意isErrorPage熟悉必须为true,才能使用exception对象。exception即捕捉到的异常。此处可以对exception进行处理,比如记录日志、重定向等等。这里把exception trace打印出来了。 500、505 等错误页面的处理类似于404。
来源:http://liaojuncai.iteye.com/blog/2034992
相关推荐
3. **错误页面配置**:在 `web.xml` 或 SpringMVC 配置中,可以设置错误代码对应的错误页面,例如: ```xml <!-- web.xml --> <error-code>404</error-code> <location>/error/404.jsp</location> </error-...
2. **异常处理**:通过 `@ExceptionHandler` 注解处理异常,提供统一的错误页面。 3. **视图解析**:可以配置不同的视图解析器,支持 JSP、Thymeleaf 等模板引擎。 4. **拦截器**:自定义拦截器,实现预处理和后处理...
开发者可以通过`BindingResult`获取错误信息,并决定如何呈现给用户,例如重定向到错误页面或显示错误消息。 4. **整合Hibernate Validator** Hibernate Validator是Bean Validation的实现,可以与SpringMVC无缝...
对于异常处理,SpringMVC提供了`@ExceptionHandler`注解,可以用来捕获并处理特定类型的异常,创建统一的错误页面或返回JSON响应。 在实际项目中,我们可能还需要配置拦截器(Interceptor),它们可以对请求和响应...
在SpringMVC中,可以使用Spring Security或者自定义过滤器来处理。 - 用户输入的用户名和密码会被发送到服务器,然后通过某种验证机制(如数据库查询)检查其有效性。 - 如果验证成功,用户会被认为是已认证的,...
3. 错误页面配置:在SpringMVC的配置中,可以通过`<error-page>`标签定义不同类型的错误代码对应的错误页面,或者通过`@ExceptionHandler`的`produces`属性设置响应的媒体类型,以返回JSON、XML等格式的错误信息。...
本文中,我们详细介绍了Springmvc自定义异常处理器的实现流程,包括自定义异常类、自定义异常处理器、springmvc.xml配置、定制错误页面和测试异常处理等步骤,这些步骤对于学习和工作具有重要的参考价值。
SSM(Spring、SpringMVC、MyBatis)是一个经典的Java web开发框架组合,其中... // 显示自定义错误页面 return new ModelAndView("error/business"); } } ``` 注册这个自定义异常处理器到SpringMVC配置中: ```xml ...
在实际项目中,还需要考虑错误处理、国际化、安全性等方面。SpringMVC提供了异常处理机制,可以自定义异常处理器。使用LocaleResolver和MessageSource实现多语言支持。安全方面,Spring Security提供了一套完整的...
Controller接收到请求后,调用模型层的方法验证用户输入,然后根据结果决定重定向到成功页面还是错误提示页面。 控制器层(Controller)是SpringMVC的核心,它接收HTTP请求,调用业务逻辑,然后将结果传递给视图层...
GlobalExceptionResolver或@ControllerAdvice注解可以捕获并处理特定类型的异常,提供友好的错误页面或JSON响应。 拦截器是SpringMVC中的另一个强大特性,它可以增强应用的功能,如权限验证、日志记录、性能统计等...
- 可以定义一个全局的异常处理器,处理所有Controller中抛出的异常,提供统一的错误页面或JSON响应。 通过以上知识点的学习,读者可以对SpringMVC有深入的理解,能够熟练地开发基于SpringMVC的Java Web应用程序。...
- SpringMVC还支持自定义错误页面,通过`<error-page>`标签在`web.xml`中配置。 7. **单元测试** - SpringMVC提供了`MockMvc`工具,允许开发者在不依赖服务器的情况下,对Controller进行单元测试。 8. **整合...
在Spring MVC中,可以创建一个自定义的Bean,该Bean使用Java的`java.security.MessageDigest`类或其他加密库来实现加密功能。 2. **扩展Druid配置**:默认的Druid配置并不直接支持加密的用户名和密码。因此,我们...
4. 在控制器中处理所发送的请求,并以 ModelAndView(属性值和返回的页面)的形式返回给向前端控制器 5. 前端控制器通过查询 ViewResolver 对象来试着解决从控制返回的视图 6. 如果前端控制找到对应的视图,则将视图...
为了展示错误信息,我们需要创建对应的错误页面(如:`WEB-INF/views/error/500.jsp`),这个页面可以包含错误代码、错误消息等信息,提供友好的用户反馈。 6. **测试与优化** 完成上述步骤后,我们可以通过编写...
在本实例中,使用了JSP页面来生成批量导入客户的界面,包括文件上传、提交按钮和错误信息显示等。 知识点5:JavaScript技术 在本实例中,使用了JavaScript技术来实现客户端验证和动态交互。在本实例中,使用了...
解决SpringMVC Controller 接收页面传递的中文参数出现乱码的问题 SpringMVC 是一个基于模型-视图-控制器(MVC)模式的Web应用程序框架,广泛应用于Java Web开发中。但是,在使用SpringMVC时,常见的一个问题是...
- 在JSP页面中,可以使用自定义标签库(Tag Library)来方便地插入token到HTML表单。自定义标签库可以封装生成和获取token的过程,使代码更加简洁易读。 6. **安全性考虑**: - 虽然token可以有效防止重复提交,...
10. **异常处理**:通过@ControllerAdvice和@ExceptionHandler,可以全局处理异常,提供友好的错误页面。 11. **日志记录**:通常会使用Log4j或SLF4J进行日志记录,便于调试和问题追踪。 12. **单元测试**:项目...