12.08mvc(3)听课笔记
springmvc处理异常
servlet默认的处理方式
1 如果不加已处理,就会直接抛出异常到页面
2 如何处理
(1 )配置错误处理页面在web.xml
编写错误页面给出提示..
404.jsp>
测试>
springmvc如何处理异常
1 定义一个错误处理页面
2 定义异常处理类
(1)
@controller
模拟数组下标越界异常
@exceptionhandler注解帮助我们处理异常信息,使用这个注解修饰一个方法
处理空指针异常和处理算术和下标越界异常
以上都是运行运行时异常,可以一起处理所有运行时异常
使用RuntimeExcetion
以上异常代码处理和controller混合不太合适,这种异常处理的方式解决了问题。但是异常处理的代码和控制器代码
在一个controller 里面定义,违反了代码编写的职责单一性。
(2) 可以单独建一个类进行异常处理
@controllerAdvice声明异常处理类>
(3)使用接口来处理异常信息
springmvc中的拦截器
Springmvc和过滤器Filter相似,用于处理器进行预处理和后处理
web.xml添加拦截器
放行让controller走起来
配置拦截器
代表拦截user下的所有
直接在浏览器输入order/findorder
控制台:
拦截发生之后程序运行顺序
afterCompletion在jsp页面执行完毕之后才运行
拦截器的应用,
权限管理,登录管理,程序运行时间
拦截器的放行
return true;
放行程序
多个拦截器的执行顺序