-
Spring 이미지 외부 폴더로 업로드 후에 이미지 접근하기(불러오기)IT, 프로그래밍/Spring 2018. 8. 7. 21:36
이미지 업로드 후에 로컬에서 불러오려고 할 때, 안되는 경우가 있다.
특히 외부에 폴더를 지정했을 경우, 일반적인 방법으로는 업로드 한 이미지 폴더에 접근할 수 있는 방법이 없기때문에 톰캣과 서블릿 설정 파일에 따로 설정을 해 주어야 한다.
1. Server.xml 파일에 업로드 폴더 경로를 매핑해준다.
123456789101112131415161718<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true"><!-- SingleSignOn valve, share authentication between web applicationsDocumentation at: /docs/config/valve.html --><!--<Valve className="org.apache.catalina.authenticator.SingleSignOn" />--><!-- Access log processes all example.Documentation at: /docs/config/valve.htmlNote: The pattern used is equivalent to using pattern="common" --><Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t "%r" %s %b" prefix="localhost_access_log" suffix=".txt"/><!-- 이게 핵심임 --><Context path="/img" reloadable="true" docBase="지정한 폴더 절대 경로"/></Host>cs 2. 서블릿 설정 파일 (servlet-context)에 리소스 매핑을 추가한다.
12345<!-- Handles HTTP GET requests for /resources/** by efficiently servingup static resources in the ${webappRoot}/resources directory --><resources mapping="/resources/**" location="/resources/" /><resources mapping="/img/**" location="지정한 업로드 폴더 절대경로" />cs 설정이 정상적으로 되었다면, 아래와 같이 접근하면 이미지가 나온다.
http://localhost:8080/img/파일명.jpg
지금 img로 매핑된 부분은 원하는대로 바꿔주면 된다.
물론 하위 폴더도 접근이 가능하다.
'IT, 프로그래밍 > Spring' 카테고리의 다른 글
Mybatis 동적 쿼리 사용 중 Parameter를 String으로 넘길때 발생하는 문제 (0) 2018.08.19 Spring을 통한 데이터 전송시 유의해야 할 점 (0) 2018.08.14 java.math.BigDecimal cannot be cast to java.lang.String (0) 2018.08.05 Daum map API, 클러스터링과 인포윈도우 생성하기 (3) 2018.08.02 Security 설정 후 post 전송 시 403 에러가 뜨는 경우 (0) 2018.08.02