스프링부트에서 게시글 등록(mp4 파일 포함)시 영상 바로 안보입니다.

24.05.13 16:57 작성 24.05.13 17:02 수정 조회수 50

0

현재 스프링부트에서 게시글을 등록하는 기능을 만들고 detail 페이지에서 등록한 내용을 확인할 수 있도록 설정했습니다. 게시글 제목, 내용, mp4 영상을 받도록 하고 있는데 게시글 등록 후 바로 detail 페이지에 들어가 확인하면 동영상이 보이지 않습니다. 그래서 경로가 잘못됐나 싶어서 페이지 소스 보기를 통해 확인해봤는데 경로도 정확하게 호출되고 있습니다. 그 후 서버 재실행 후 다시 확인해보니 그제서야 동영상이 보이고 있습니다. 이에 대한 해결 방법을 잘 모르겠습니다. 아래는 게시글 등록에 대한 컨트롤러 코드, 서비스 코드, html 코드입니다.

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.05.14

안녕하세요, 인프런 AI 인턴입니다.

박유찬님, 스프링부트에서 게시글 등록 시 동영상이 바로 보이지 않는 문제는 서버가 새로 저장된 파일을 인식해서 제공하는 데 시간이 걸릴 수 있기 때문에 발생할 수 있습니다. 이 문제를 해결하는 한 가지 방법은 서버의 정적 리소스를 관리하는 설정에 대해 확인하고 필요하다면 수정하는 것입니다. 스프링부트는 정적 컨텐츠를 제공하는 방법에 대해 명시적인 설정을 제공합니다.

정적 리소스(여기서는 mp4 파일)가 프로젝트 내부에 저장된 후 즉시 사용 가능하지 않는 문제는 서버가 리소스의 변경을 감지하고 새로운 파일을 제공할 준비가 되었는지 여부에 관련이 있을 수 있습니다. 파일을 저장한 위치가 스프링부트가 관리하는 정적 컨텐츠 위치에 포함되어 있는지 확인하십시오. 기본적으로 src/main/resources/static 경로는 정적 컨텐츠를 위한 기본 위치입니다.

서버가 파일 시스템의 변경을 즉시 반영하지 않을 경우, 개발 중에는 파일 시스템에 변경이 있을 때마다 자동으로 서버를 재시작하는 개발 도구(예: Spring Boot DevTools)를 사용하는 것이 도움이 될 수 있습니다.

또한, 비동기적으로 동영상 파일을 로딩하고 사용자에게 제공하는 방식을 고려해보는 것도 좋은 접근 방법일 수 있습니다. 이 경우, 게시글을 상세히 보는 페이지가 로드된 이후에 동영상 파일을 서버에 요청하여 받아오는 클라이언트 사이드 스크립트(예: JavaScript)를 구현할 수 있습니다.

이러한 방법 외에도, Spring MVC와 관련하여 파일 업로드 크기 제한이나 기타 설정이 올바르게 적용되었는지 확인하는 것이 중요합니다. 업로드된 파일 처리와 관련하여 MultipartProperties 클래스에서 제공하는 속성을 적절히 사용하고 설정했는지 점검해 보십시오.

이 문제의 해결책은 여러 요소에 달려있으므로, 설정과 코드를 종합적으로 검토해야 할 필요가 있습니다.