第一步,创建一个拦截器,实现前置处理方法
public class BasePathInterceptor extends HandlerInterceptorAdapter {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
String scheme = request.getScheme();
String serverName = request.getServerName();
int port = request.getServerPort();
String path = request.getContextPath();
String homeUrl = scheme + "://" + serverName + ":" + port + path;
request.setAttribute("ctx", homeUrl);
return true;
}
}
第二步,注册拦截器
@Configuration
public class WebConfiguration extends WebMvcConfigurerAdapter {
@Override
public void addInterceptors(InterceptorRegistry registry) {
// 多个拦截器组成一个拦截器链
registry.addInterceptor(new BasePathInterceptor()).addPathPatterns("/**");
super.addInterceptors(registry);
}
}
怎么用?

如果想引用上图目录下的jquery.min.js,看代码。
<script src="${ctx}/js/jquery.min.js"></script>
本文详细介绍了如何在 Spring MVC 中创建并配置一个自定义拦截器,用于处理请求前的路径设置,通过实例展示了如何在 HTML 中引用正确路径下的资源文件,如 jquery.min.js,对于理解 Spring MVC 的工作流程和自定义处理非常有帮助。
1177

被折叠的 条评论
为什么被折叠?



