Sử dụng ứng dụng web Khởi động mùa xuân Tôi cố gắng phân phối tài nguyên tĩnh của tôi từ một thư mục hệ thống tệp bên ngoài dự án của tôi.Cung cấp tài nguyên tĩnh từ hệ thống tệp | Spring Boot Web
cấu trúc thư mục trông giống như: - Cấu hình
src
main
java
resources
test
java
resources
pom.xml
ext-resources (I want to keep my static resources here)
test.js
mùa xuân: -
@SpringBootApplication
public class DemoStaticresourceApplication extends WebMvcConfigurerAdapter {
public static void main(String[] args) {
SpringApplication.run(DemoStaticresourceApplication.class, args);
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/test/**").addResourceLocations("file:///./ext-resources/")
.setCachePeriod(0);
}
}
Hitting 'http://localhost:9999/test/test.js' trong trình duyệt của tôi cho lại một 404.
Làm thế nào tôi nên cấu hình ResourceHandlerRegistry để phục vụ tài nguyên tĩnh từ thư mục 'tài nguyên mở rộng' được đề cập ở trên?
Tôi có thể bật/tắt bộ nhớ cache cho môi trường dev/prod.
Cảm ơn
CẬP NHẬT 1
Cho đường dẫn tập tin tuyệt đối hoạt động: -
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/test/**")
.addResourceLocations(
"file:///C:/Sambhav/Installations/workspace/demo-staticresource/ext-resources/")
.setCachePeriod(0);
}
Làm thế nào tôi có thể cung cấp vị trí tương đối? Đường dẫn tuyệt đối sẽ làm cho cuộc sống của tôi trở nên khó khăn trong quá trình xây dựng quy trình triển khai &.
bạn đã thử đường dẫn tuyệt đối chưa? (và có thể bạn chỉ có một '/' nhiều hơn trong URL của mình :)) – sodik
Đường dẫn tuyệt đối hoạt động. Xem câu hỏi được cập nhật. Có cách nào để cung cấp đường dẫn tương đối không? –
xây dựng nó :) ví dụ: File ("ext-resource") getAbsoluteFile(). ToURI ... kiểm tra javadoc với cú pháp thích hợp – sodik