簡體   English   中英

當另一個控制器方法在Spring MVC中結束執行時,如何重定向到傳遞參數的控制器方法?

[英]How can I redirect to a controller method passing a parameter when another controller method end its execution in Spring MVC?

我在Spring MVC中還很陌生,但存在以下問題。

我有一個名為dettaglioProgettoDaRicerca()的控制器方法:

@RequestMapping(value = "/dettaglioProgettoDaRicerca", method = RequestMethod.GET)
public String dettaglioProgettoDaRicerca(@RequestParam String prgPro, Locale locale, Model model) throws Exception {
    System.out.println("INTO dettaglioProgettoDaRicerca(), codice progetto: " + prgPro);

.....................................................................
.....................................................................
DO SOMETHING
.....................................................................

return "visualizzaProspetto/prospettoRendicontazione";
}

如您所見,通過String prgPro傳遞的參數,可以處理對/ dettaglioProgettoDaRicerca資源的GET請求。

然后,我有另一個名為** confermaVariazioneAnticipo()的控制器方法:

@RequestMapping(value = "confermaVariazioneAnticipo", method=RequestMethod.GET)
public String confermaVariazioneAnticipo(@RequestParam String codiceProgetto, @RequestParam String variazioneAnticipoImp, Model model) throws Exception {

    System.out.println("INTO confermaVariazioneAnticipo()");

    ..................................................................
    ..................................................................
    DO SOME OTHER THING
    ..................................................................
    ..................................................................

    REDIRECT TO THE dettaglioProgettoDaRicerca() METHOD PASSING codiceProgetto AS PARAMETER
}

如您所見,此方法處理對confermaVariazioneAnticipo的 Http GET請求,並采用String codiceProgetto (即與prgPro String相同的字符串作為第一個dettaglioProgettoDaRicerca()方法的參數

最后,第二個方法不應返回視圖的邏輯名稱,而必須重定向到第一個dettaglioProgettoDaRicerca()方法,並將codiceProgetto值作為參數傳遞給該方法。

如何正確實現此行為?

只需將其作為參數傳遞:

return "redirect:/path/to/other/controller?param=" + value;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM