SpringMvc静态资源访问实现方法代码实例

网友投稿 596 2023-05-03

SpringMvc静态资源访问实现方法代码实例

SpringMvc静态资源访问实现方法代码实例

原因

SpringMvc中配置前端控制器DispatcherServlet 设为‘/'后,所有的资源请求都要被前端控制器捕捉,SpringMvc会把他们作为普通的请求处理,从而因为找不到对应处理器报错。

解决方法

官方推荐方法

其他方法

xml方式

在springmvc的xml配置文件中

cache-period="31556926"/>

location指资源在项目中的位置'/'是根目录webapp,mapping请求路径‘/'是端口号后的‘/'

含义:当请求的资源路径符合/resources/,转到/public或者/static/下的资源

例:

访问资源/resources/acss --> 先/public/a.css(若先没有)后/static/a.css

java方式

@Configuration

//声明配置类

@EnableWebMvc

//请用springmvc扫描

pCvtiMwAIdEublic class WebConfig implements WebMvcConfigurer {

@Override

public void addResourceHandlers(ResourceHandlerRegistry registry) {

registry.addResourceHandler("/resources/**")

.addResourceLocations("/public", "clashttp://spath:/static/")

.setCachePeriod(31556926);

}

}

cache-period="31556926"/>

location指资源在项目中的位置'/'是根目录webapp,mapping请求路径‘/'是端口号后的‘/'

含义:当请求的资源路径符合/resources/,转到/public或者/static/下的资源

例:

访问资源/resources/acss --> 先/public/a.css(若先没有)后/static/a.css

java方式

@Configuration

//声明配置类

@EnableWebMvc

//请用springmvc扫描

pCvtiMwAIdEublic class WebConfig implements WebMvcConfigurer {

@Override

public void addResourceHandlers(ResourceHandlerRegistry registry) {

registry.addResourceHandler("/resources/**")

.addResourceLocations("/public", "clashttp://spath:/static/")

.setCachePeriod(31556926);

}

}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:idea 访问html页面端口号显示的是63342而不是8080
下一篇:SpringMvc自定义拦截器(注解)代码实例
相关文章

 发表评论

暂时没有评论,来抢沙发吧~