如何在基于Spring的Web服务上提供图像

时间:2015-07-21 12:11:13

标签: java spring spring-mvc

我是第一次开发java web服务。我正在使用Spring Framework来做到这一点。我需要提供用户图像。我将从客户端获取Base64 String并将其作为图像写入,并将其可访问的URL添加到数据库,而不是每当客户端想要看到此图像时,我将只发送图像URL,这样客户端就能够使用该图像用更少的努力。 但要做到这一点,我需要通过浏览器在他们的文件夹中访问这些图像。 我不知道如何在基于java的Web服务上访问文件夹及其文件。我希望有人帮忙。

如果有一种方法,你认为更好。请随时写信。

1 个答案:

答案 0 :(得分:1)

Spring Framework 4.1改进了对资源处理的支持。它允许您以声明方式配置从哪里为特定请求路径提供资源,这就是您可能感兴趣的内容。

在您的代码中,通过Web访问文件系统资源主要归结为覆盖基于addResourceHandlers()的配置类的WebMvcConfigurerAdapter方法。 Spring Framework documentation显示以下示例:

  

例如,要从Web应用程序根目录中的公共资源目录提供URL模式为/ resources / **的资源请求,您将使用:

@Configuration
@EnableWebMvc
public class WebConfig extends WebMvcConfigurerAdapter {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/resources/**").addResourceLocations("/public-resources/");
    }

}

/public-resources/替换为前缀为file://的文件系统路径,例如file://user-uploads/

我建议您查看relevant blog post和随附的example project。该演示项目展示了如何为复杂场景配置资源处理的a good example