我从博客读者那里收到的最常见的问题之一是如何在Spring MVC的应用程序中使用CSS和javascript文件。 因此,这是撰写有关Spring MVC中资源使用情况的文章的好机会。 通常,我将使用基于Java的配置方法。
如今,很难想象没有CSS和JavaScript文件的Web应用程序。 Spring MVC可以通过什么方式处理它们? 将这些文件放在动态Web项目中的何处? 如何获取静态资源? 我将在几分钟内尝试解释所有这一切。
首先,您需要具有一些要插入到项目中的css或javascript文件。 在我的示例中,我将使用main.css文件:
仔细查看我将文件放置在哪里( src \ main \ webapp \ resources \ css \ main.css )。 之后,我可以继续使用Java配置文件。
@Configuration
@EnableWebMvc
...
public class WebAppConfig extends WebMvcConfigurerAdapter {@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");}
...
在上方,您可以看到代码片段,其中显示了如何修改配置类以使资源可用。 在我们的案例中,资源的角色仅扮演一个main.css文件。 让我们考虑一下下面的代码中发生了什么:
...@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");}
...
在这里,我声明了src \ main \ webapp \ resources文件夹及其所有内容到资源位置值/ resources /的映射。
完成此操作后,您可以在Spring MVC中访问CSS和javascript文件 。 这是一些用法示例:
如果我想将main.css应用于URL:www.mysite.com/index.html,则需要在HTML代码中使用以下结构:
< link href="resources/css/main.css" rel="stylesheet" type="text/css"/ >
如果我想将main.css应用于URL:www.mysite.com/some/location.html,则需要在HTML代码中使用以下结构:
< link href="../resources/css/main.css" rel="stylesheet" type="text/css"/ >
这两个例子很清楚,足以理解如何使用Spring MVC资源。 在以下文章中,我将演示Spring MVC项目中的资源使用情况。
翻译自: https://www.javacodegeeks.com/2013/08/spring-mvc-resources.html