Servlet异常处理器
说明
在Sevlet中也可以编写一个处理器,用来对系统中异常作统一处理。
功能实现
第一步:自定义异常
public class ArgumentException extends RuntimeException {@Getterprivate String msg;public ArgumentException(String msg) {super(msg);this.msg = msg;}}
第二步:定义用来处理异常的Servlet
@WebServlet(urlPatterns = "/creditsExceptionHandler")
public class CreditsExceptionHandler extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doPost(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {PrintWriter out = resp.getWriter();//获取页面对象PageContext pageContext = JspFactory.getDefaultFactory().getPageContext(this, req, resp, null, true, 8192, true);//通过页面对象获取异常对象CreditsException exception = (CreditsException) pageContext.getException();req.setAttribute("msg", exception.getMsg());req.setAttribute("aim", exception.getAim());req.getRequestDispatcher("error.ftl").forward(req, resp);}
}
第三步:在web.xml中配置异常处理器
<error-page><exception-type>com.wc.ex.ArgumentException</exception-type><location>/argumentExceptionHandler</location>
</error-page>
第四步:Servlet中使用测试
@WebServlet(urlPatterns = "/user")
public class UserServlet extends HttpServlet {private UserService userService = new UserServiceImpl();@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String username = request.getParameter("username");if(username == null || username.trim().length()==0){throw new ArgumentException("参数用户名不能为空");}}}
Servlet异常处理器相关推荐
- 简单异常处理器SimpleMappingExceptionResolver
SpringMVC已经定义好了该类型转换器,在使用时可以根据项目情况进行相应异常与视图的映射配置 <!--配置简单映射异常处理器--> <bean class="org.s ...
- SpringMVC异常处理器代码示例
异常处理器 springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑. 异常处理思路 Throwable(error,Exception) ...
- JavaWeb——springMVC异常处理器
一.引言 第一次听说异常处理器这个东西,感觉好神奇高大上,可以一接触就感觉这不就是普通的exception处理么==一切名词都是纸老虎,下面来讲讲异常处理了,就是不能怂== 二.原理 总体说下,异常处 ...
- SpringBoot 自定义全局异常处理器
SpringBoot自定义全局异常处理器 一.maven依赖 二.GlobalExceptionHandler.java 三.ResponseStandard.java 四.logback.xml 五 ...
- SpringMVC使用HandlerExceptionResolver实现全局异常处理器
在SpringMVC中,提供了一个全局异常处理器,用于对系统中出现的异常进行统一处理.在一般的系统中,DAO层.Service层及Controller层出现异常都以"throws Excep ...
- Spring MVC的异常处理器
异常处理器 异常处理思路 Java 中异常包括两类:预期异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息,后者主要通过规范代码开发.测试等手段减少运行时异常的发生. ...
- SpringBoot的过滤器拦截器AOP和异常处理器
目录 前言 过滤器 创建过滤器 拦截器 创建拦截器 配置拦截器 AOP 创建AOP 异常处理器 创建异常处理器 测试请求的执行过程 创建接口 发送请求 前言 过滤器.拦截器.AOP.异常处理器是搭建系 ...
- SpringMVC 异常处理(简单异常处理器 SimpleMappingExceptionResolver;自定义异常处理需要实现HandlerExceptionResolver接口)
一.SpringMVC 框架异常处理流程 二.异常处理的两种方式 三.简单异常处理器 SimpleMappingExceptionResolver 1.自定义异常类 package com.lt.ex ...
- springboot全局异常处理器
通过aop监控程序异常,全局异常捕获 定义全局异常处理器: import java.util.HashMap; import java.util.Map; import org.springframe ...
最新文章
- X@X.X域名转向的实现
- 【Linux】安装配置Tomcat7
- CentOS 初体验十七:Nexus发布仓库和引用
- python自动下载邮件_python实现邮件自动化
- 【牛客 - 283H】图论一顿套模板(思维转化,Dijkstra)
- 【Pytorch】model.train()和model.eval()用法和区别,以及model.eval()和torch.no_grad()的区别
- 洛谷——P1017 进制转换
- mysql oracle 锁机制_Mysql锁机制
- Windows配置MinGW环境变量
- 解决 Files 的值 HEAD无效。路径中具有非法字符...
- Linux 执行 Shell脚本报错,“syntax error: unexpected end of file” 原因及处理
- 百度网盘解析工具 利用IDM等工具提速下载
- css3 360度旋转
- 一文教会你使用R语言和基本统计分析
- EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT. RENEWALS ARE LESSER
- C++通讯录管理系统
- 迷失lost结局什么意思_《lost》《迷失》大结局,没看懂的进,详细讲解
- 项目使用jdk17人傻了
- matlab浊音段和清音段,基于Matlab编写的语音端点检测1
- 论文Makeup Like a Superstar: Deep Localized Makeup Transfer Network(2016,妆容迁移,基于数据库匹配)