언어 및 도구들 공부/Spring
업로드한 파일의 경로만 있고 사진 원본이 없으면?
Dr.Mlem
2024. 11. 8. 14:47
(08-13 에서 join.html에서 회원가입할 때, 파일 업로드를 하는 것을 보고 든 의문)
Q1.
현재 파일을 업로드를 스프링부트로 받아서 저장해두고 있고, 해당 파일의 주소 경로를 db에 저장해둔 상태야. 이 상황에서, 업로드된 파일을 삭제해버리고, 나중에 저장된 주소 경로를 db에서 불러와서 파일을 불러내려고 하면, 무슨 에러가 뜨지?
GitHub Copilot
업로드된 파일을 삭제한 후, 나중에 저장된 주소 경로를 DB에서 불러와서 파일을 불러내려고 하면, 파일이 존재하지 않기 때문에 다음과 같은 에러가 발생할 수 있습니다:
- 파일을 찾을 수 없음 (FileNotFoundException): 파일 시스템에서 해당 경로에 파일이 존재하지 않기 때문에 발생하는 에러입니다. 예를 들어, Java에서는 java.io.FileNotFoundException이 발생할 수 있습니다.
- HTTP 404 Not Found: 웹 애플리케이션에서 파일을 제공하려고 할 때, 파일이 존재하지 않으면 HTTP 404 상태 코드가 반환될 수 있습니다.
- NullPointerException: 파일 경로를 사용하여 파일 객체를 생성하거나 파일을 읽으려고 할 때, 파일이 존재하지 않으면 null을 반환하거나 NullPointerException이 발생할 수 있습니다.
예를 들어, 스프링 부트 애플리케이션에서 파일을 읽으려고 할 때 파일이 존재하지 않는 경우 다음과 같은 예외가 발생할 수 있습니다:
이 경우, 파일이 존재하지 않으면 FileNotFoundException이 발생합니다.