为Spring MVC和Maven Web Application创建文件/映像文件夹目录

时间:2015-01-24 16:50:02

标签: java spring maven spring-mvc java-ee

我正在使用Maven和Spring MVC构建一个Web应用程序。我已决定将我的图像保存在目录文件夹中,而不是保存在数据库中。我将保存图像链接到数据库。搜索后我发现当你有很多图像时,在应用程序目录或WAR文件目录中保存图像是不好的做法。现在我的项目有默认的maven目录:

--src
----main
------java
------resources
------webapp
---------WEB-INF
----test

现在我的问题是:

  1. 在应用程序目录中保存图像真是不好的做法吗?
  2. 如果是这样,那么我应该把我的图片文件夹放在哪里?在“src”或者里面 在“src”之外或在“main”之内?

1 个答案:

答案 0 :(得分:3)

  1. 我同意这是不好的做法,您的应用程序目录可以在重新部署等过程中删除......
  2. 正如Deinum已经建议的那样,将它存放在其他地方。我将添加部分用于应用程序服务器提供此类映像的spring-boot应用程序配置:

    @Component
    class WebConfigurer extends WebMvcConfigurerAdapter {
        @Override
        public void addResourceHandlers(ResourceHandlerRegistry registry) {
             registry.addResourceHandler("/images/**").addResourceLocations("file://" + imageDir);
        }
    
    }
    
  3. 只需将imageDir替换为存储图像的正确路径。