我正在開發一個需要驗證表單的Spring MVC應用程序。我的問題是下一個:我想改變從我的方法返回數據的處理取決於一些邏輯。如何在運行時設置響應類型(Spring MVC)
例如,我有一個註冊用戶頁面!如果用戶字段有效,我需要在註冊頁面上向ajax發送消息。但如果它們無效,我需要返回視圖名稱(或重定向)。我該怎麼做?這裏是我的代碼:
@RequestMapping(value = "save_user", method = RequestMethod.POST)
public String saveUser(@Valid User user, BindingResult result) {
if(result.hasErrors()) {
return "common/add_user"; // Here I need to return the view name or do redirect
} else {
userManager.add(user);
return "success... bla bla bla"; // Here I need to return some message.
}
}
如果你不想重定向,你的控制器方法應該看起來像public @ReponseBody String saveUser(其餘部分保持不變)。如果你想重定向,請刪除responseBody。你的問題並不準確。此外,您已經在common/add中返回視圖名稱。所以,選擇一個,查看或發送給Ajax。 –
感謝您的回答。是。你是對的。但我想知道我可以在運行時選擇一個(查看還是發送)?我可以根據一些邏輯選擇它嗎?也許春天有一個機制... –
據我所知,沒有這樣的機制,也沒有這樣的要求,我聽說過。也許其他一些用戶可以幫助你,但我懷疑它。祝你好運。 –