ningbaoer

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

静态资源映射

静态资源映射
概念:在web开发中,对静态资源映射是必不可少的,而所谓的静态资源映射,通俗来说,
就是给项目导入图片,js,css等资源,同时可以进行访问。

1. 通过 DefaultServlet 处理静态资源
在 spring3.0.4 以后的 SpringMVC 模块提供了静态资源映射器组件。
通过 mvc:resources标签配置静态资源映射器
在 SpringMVC 的配置文件中配置<mvc:default-servlet-handler />后,
会在 Spring MVC 上下文中定义一个 org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler,
它会像一个检查员,对进入 DispatcherServlet 的 URL 进行筛查,
如果发现是静态资源的请求就将该请求转由 Web应用服务器默认的 Servlet 处理,
如果不是静态资源的请求,才由DispatcherServlet 继续处理

2.修改 SpringMVC 配置文件
<mvc:default-servlet-handler/>

3.SpringMVC 的异常处理
使用 @ControllerAdvice + @ExceptionHandler 进行全局的 Controller 层异常处理,
就再也不用在 Controller 层进行 try-catch 了,将 Controller 层的异常和数据校验的异常进行统一处理,
减少模板代码,减少编码量,提升扩展性和可维护性

4.SpringMVC*拦截器

4.1概念:Spring MVC 的拦截器(Interceptor)与 Servlet 的过滤器(Filter)类似,它主要用于拦截用户的请求并做相应的处理,
通常应用在权限验证、记录请求信息的日志、判断用户是否登录等功能上。

4.2拦截器和过滤器的区别
拦截器是SpringMVC 组件,而过滤器是 Servlet 组件。
拦截器不依赖容器,过滤器依赖容器。
拦截器只能对控制器请求起作用,而过滤器则可以对所有的请求起作用。
拦截器可以获取 IOC 容器中的各个 bean,而过滤器就不太方便

4.3定义拦截器
在 Spring MVC 中定义一个拦截器需要对拦截器进行创建和配置。创建拦截器时需要实现 HandlerInterceptor 接口。


preHandle方法 前置拦截


postHandle*方法 后置拦截

afterCompletion方法 释放资源

4.4 拦截器的顺序 配置顺序 ,就是执行顺序
一个 URL 能够被多个拦截器所拦截,全局拦截器最先执行,
其他拦截器根据配置文件中配置的上下顺序来决定执行顺序的。先配置谁, 谁就先执行。

 

posted on   宁宝儿  阅读(188)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
点击右上角即可分享
微信分享提示