Notice
Link
- Today
- Total
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- CentOS
- MFC
- ffmpeg
- MariaDB
- CSS
- vc++
- 말줌임 CSS
- springboot
- kill -9
- group by
- springboot 재가동
- 시간대별 통계
- Back 키 클릭 감지
- rn
- 피쉬랜드
- 터치좌표 view
- sql exception
- mybatis exception
- SQL
- pid 찾아 kill
- c언어
- 가변영역 스크롤
- 파티션 빠른 삭제
- Activity 전체화면
- reactnative
- 시간대 테이블생성
- MySQL
- 스크롤적용
- 코드로 서버 재실행
- view 획득
Archives
개발은 하는건가..
Springboot 외부 경로의 리소스 또는 업로드 파일 접근 본문
반응형
Springboot 를 배포 후 종종 변경되는 일부 컨텐츠 파일만을 교체해야 할 경우 static 리소스 안에 뒀을 경우 다시 빌드 하고 배포를 해야하기 때문에 그런 파일들을 별로도 외부의 고정된 경로에 두어 파일만 교체 할 수 있도록 할 경우의 방법이다.
아래와 같이 임의 클래스를 생성후 @Configuration 어노테이션 추가 후 WebMvcConfigurer 인터페이스를 상속 후 ResourceHandler 와 ResourceLocations 를 등록해주면 된다.
import java.util.concurrent.TimeUnit;
@Configuration
public class ResourceConfiguration implements WebMvcConfigurer {
@Override
public void addResourceHandlers(final ResourceHandlerRegistry registry) {
registry.addResourceHandler("/download/**")
.addResourceLocations("file:///E:/webserver_storage/")
// 접근 파일 캐싱 시간
.setCacheControl(CacheControl.maxAge(1, TimeUnit.MINUTES));
}
}
요청 url 접근자 지정 (서버 구동 후 http://localhost:8080/download/xxx~ 식으로 접근할 수 있게 한다.)
registry.addResourceHandler("/download/**")
리소스 파일의 실제 주소 설정 (경로 끝에 / 를 붙여 줘야 한다.)
// 리눅스 경우 root에서 시작하는 폴더 경로 지정 할 경우
.addResourceLocations("file:///usr/download/")
// 리소스 템플릿 경로를 지정할 경우
.addResourceLocations("classpath:/templates/", "classpath:/static/")
// 윈도우에서 실행 시 다음과 같은 형태로 드라이브 문자 포함 경로 지정
.addResourceLocations("file:///E:/webserver_storage/")
'SpringBoot , Thymeleaf' 카테고리의 다른 글
[Srpingboot] Multipart file upload size limit 설정 (0) | 2023.01.06 |
---|---|
[Springboot] IntelliJ 개발 환경 속도 향상 (0) | 2023.01.05 |
IntelliJ Springboot 에서 https 적용하기 (0) | 2022.05.16 |
[Springboot] 프로젝트를 카페24(cafe24.com) 에서 구동 절차 (0) | 2022.04.08 |
[Springboot] @ControllerAdvice 를 통해 global ModelAttribute 적용하기 (0) | 2022.04.07 |
Comments