버튼 클릭시 서비스를 호출하여 데이터베이스를 쿼리하고 csv 파일을 생성 한 다음 다시 사용자에게 반환하고 싶습니다. 이 프로세스는 오래 실행됩니다 (최대 40 초 소요될 수 있음). 사용자 차단을 원하지 않습니다.spring mvc에서 파일 프로세스 업데이트 생성
내 생각은 다음과 같습니다 :
가 사용자의 입력을 받아 서비스에 createReport 요청을 제출 나는 사용자가 보고서 생성의 진행 상황을 압정 수있는, 진행 페이지를 만들 LIK 것이다. 응답을 기다리지 않고 보고서 ID를 다시 사용자에게 반환하십시오. 새 탭이 열려 보고서 생성 상태를 모니터링 할 수 있습니다. 사용자가 보고서 페이지를 확인하여 요청 상태를 확인할 수 있습니다. 요청이 준비되면 브라우저에서 보고서 다운로드가 시작됩니다.
I는 다음과 같이 떨어지게하고 싶은 :
을 수행합니다. 파일을 저장하고 파일 ID를 리턴하는 제어기 메소드. 그런 다음이 컨투어러에서 새 스레드는 Service를 호출하고 주어진 파일에 데이터를 씁니다. b. 보고서의 상태를 사용하여 요청 PARAMS을 보여 컨트롤러 방법 - 파일이 생성되면 파일이 생성 된 경우 확인을 FileID에 여부 -하고 HttpServletResponse 응답 파일을 작성
질문입니다 : 내가 파일 ID를 저장해야하며, 파일 ID를 연결하는 방법을 파일 자체? (캐시 데이터베이스?)
보고서 상태를 어떻게 확인할 수 있습니까? AJAX 요청을 1 ~ 2 초마다 보내는 것에 대해 생각하십니까?
어떤 아이디어와 권장 사항이 있습니까?