настройка кода spring addResourceLocations на диске

Я сохраняю файлы во временный каталог, расположенный вне моего проекта, и мне нужно иметь возможность ссылаться на них после их сохранения.

Я попытался добавить обработчик ресурсов

registry.addResourceHandler("/photo/**").addResourceLocations("D://photo//");

но не похоже, что spring понимает, что файл не находится на пути к классам

21:58:48.293 [http-nio-8080-exec-14] DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Mapping [/photo/a.png] to HandlerExecutionChain with handler [ResourceHttpRequestHandler [locations=[ServletContext resource [/D://photo//]], resolvers=[org.springframework.web.servlet.resource.PathResourceResolver@782ce27b]]] and 1 interceptor

есть ли префикс или что-то, что я пропустил?

спасибо!

1 ответов


вы можете определить абсолютный путь в ресурсов, как указано ниже.

registry.addResourceHandler("/test/**")
    .addResourceLocations("file:///Users/testuser/test/");

этот пример для *nix, используйте правильное расположение windows после файла://

Весна документацию ресурс здесь

еще одно личное предложение: я бы попытался максимально уменьшить абсолютную зависимость от файлов в любом веб-приложении. Автономный проект будет намного проще с точки зрения обслуживания.