我是第一次开发 Java Web 服务。我正在使用 Spring Framework 来做到这一点。我需要提供用户图像。我将从客户端获取 Base64 字符串并将其作为图像写入并将其可访问的 url 添加到数据库,而不是每当客户端想要查看此图像时我将只发送图像 url 这样客户端就可以使用图像用更少的努力。 但要做到这一点,我需要通过浏览器访问文件夹中的这些图像。 我不知道如何在基于 Java 的 Web 服务上访问文件夹及其文件。希望有人能提供帮助。
如果有你认为更好的方法去做。请随意写。
最佳答案
Spring Framework 4.1 改进了对资源处理的支持。它允许您以声明方式配置从何处为特定请求路径提供资源,这可能是您感兴趣的内容。
在您的代码中,使文件系统资源可从 Web 访问主要归结为重写基于 WebMvcConfigurerAdapter
的配置类的 addResourceHandlers()
方法。 Spring Framework documentation显示以下示例:
For example, to serve resource requests with a URL pattern of /resources/** from a public-resources directory within the web application root you would use:
@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了解如何为复杂场景配置资源处理。
关于java - 如何在基于 Spring 的 Web 服务上提供图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31538696/