Spring MVC学习之——异常处理器

异常处理器

如果不加以异常处理,错误信息肯定会抛在浏览器页面上,这样很不友好,所以必须进行异常处理。

1.异常处理思路

系统的dao、service、controller出现都通过throws Exception向上抛出,最后由springmvc前端控制器交由异常处理器进行异常处理,如下图:

2.创建异常处理器

java 复制代码
@Component
public class CustomExceptionResolver implements HandlerExceptionResolver {

	@Override
	public ModelAndView resolveException(HttpServletRequest request,
					HttpServletResponse response, Object handler, Exception ex) {
		ModelAndView modelAndView = new ModelAndView();
		modelAndView.addObject("message", ex.getMessage());
		modelAndView.setViewName("error");
		return modelAndView;
	}

}

3.3.测试

  • 编写controller
java 复制代码
@Controller
@RequestMapping("/account")
public class AccountController {

   @RequestMapping("/findAccount")
    public String findAccount14(Model model) {
        model.addAttribute("msg", "欢迎你 springmvc");
        //模拟异常信息
        int i = 10/0;
        return "success";
    }
}
  • 在index.jsp里面定义超链接
html 复制代码
<a href="/account/findAccount">异常处理器</a>
相关推荐
nashane25 分钟前
HarmonyOS 6学习:RichEditor宽度“暴力”计算与富文本截图避坑
学习·harmonyos 5
鹿鸣悠悠1 小时前
【AI学习】全链路、并发、响应时间
学习
PNP Robotics1 小时前
领军军者|PNP机器人包文涛:以具身智能定义机器人的“生命直觉”
人工智能·深度学习·学习·机器学习·机器人
QYQ_11272 小时前
嵌入式学习——字符设备驱动的注册和调用流程
学习
xinhuanjieyi2 小时前
极语言让ai学习的方法
开发语言·学习
念恒123062 小时前
Python(复杂判断)
python·学习
happymaker06262 小时前
MyBatis学习日记——DAY03(手写MyBatis框架实现简单功能)
学习
山楂树の3 小时前
原生 WebGL + Canvas 实现鱼眼图像去畸变(Shader逐像素计算)
图像处理·数码相机·学习·程序人生
**蓝桉**3 小时前
容器服务学习笔记
笔记·学习
乔代码嘚3 小时前
Agentic-KGR:多智能体强化学习驱动的知识图谱本体渐进式扩展技术
人工智能·学习·大模型·知识图谱·ai大模型·大模型学习·大模型教程