我有这个控制器:
@Controller
public class HelloWorldController {
@RequestMapping("/hello.html")
public ModelAndView helloWorld() {
String message = "Hello World, Spring 3.0!";
return new ModelAndView("hello", "message", message);
}
@RequestMapping(value = "/login", method = RequestMethod.GET)
public String viewLogin(Map<String, Object> model) {
User user = new User();
model.put("userForm", user);
return "LoginForm";
}
@RequestMapping(value = "/login", method = RequestMethod.POST)
public String doLogin(@Valid @ModelAttribute("userForm") User userForm,
BindingResult result, Map<String, Object> model) {
if (result.hasErrors()) {
return "login";
}
return "LoginSuccess";
}
}
我有两种不同的HTTP方法来处理相同的URL
/login
。当点击第一个URL 'localhost:8080/project_name/login
' 时,将使用 GET
方法来处理第一个方法,并将我重定向到/LoginForm
。据我了解,由于请求
/login
始终使用GET
,因此第二个方法处理程序将不会被执行。如果我的理解是错误的,请告诉我如何执行第二个方法,谢谢。
/login
的调用,但使用POST方法。谢谢! - Meninx - メネンックス