2012-06-06 3 views
1

저는 봄의 초보자입니다. 질문이 어리석은 경우 미안 해요. 스프링 기반 MVC 폼과 애노테이션 기반 컨트롤러에 2 가지 메소드가 있습니다.Spring MVC의 폼 처리 페이지

@RequestMapping(method = RequestMethod.GET) 
public String getUploadForm(Model model) { 
    model.addAttribute(new UploadItem()); 
    initModel(model); 
    return "upload/uploadForm"; 
} 

@RequestMapping(method = RequestMethod.POST) 
public String create(UploadItem uploadItem, BindingResult result, Model model) throws IOException, ServletException { 
    // Some type of file processing... 
} 

내 buissiness 요구 사항은 간단합니다 작업이 진행 중입니다 "작업이 처리되는"페이지가 사용자에게 통보해야하므로 처리가, 몇 분 정도 걸립니다 원인 추가하는 것입니다 (하지만 진행률 표시 줄이 필요하지 않습니다) massege : "잠시 기다려주십시오."

Spring에서 그렇게 쉬운 방법이 있습니까?

답변

3

당신이 생각하는 것은 정확히 봄과 관련이 없다고 생각합니다. 더 긴 작업이 실행되는 동안 메시지를 표시하려면 더 긴 작업이 실행되는 동안 Ajax/JQuery를 사용하여 텍스트/애니메이션을 표시해야합니다. this 예제를 통해 JQuery로 이러한 작업을 수행 할 수있는 방법을 살펴 보는 것이 좋습니다.

1

클라이언트 측에서도 처리하도록 제안합니다. 이 작업을 수행하는 가장 좋은 방법 중 하나는 jquery ajax를 사용하여 서버를 호출 할 수 있다는 것입니다. 응답을 다시받을 때까지 실행할 고유 한 메소드를 작성할 수 있습니다.

0

thx 얘들 아, 백그라운드에서 일부 스레드를 실행 한 다음 서버 측에서 컨트롤을 리디렉션하려고 생각했지만 실제로 클라이언트 솔루션이 훨씬 더 간단하고 간단합니다.

jquery/js를 사용하여 메시지를 표시하고 양식을 제출하십시오. 아약스도 필요하지 않습니다.