假設前台通過submit傳值,代碼如下:
<form action="testPost.do" method="post"> 頁碼:<input type="text" name="page" /><br /> 每頁容量:<input type="text" name="num" /><br /> <input type="submit" value="添加" /> </form>
那么controller中接收的方法就是在注解里做設置,先上代碼,之后再根據代碼解釋:
@Controller public class TestController { @RequestMapping(value="/testPost", method=RequestMethod.POST) public ModelAndView test(String page,int num){ ModelAndView mv = new ModelAndView(); String data = "傳值成功:" + page + "||" + num; mv.addObject("msg", data); mv.setViewName("msg"); return mv; } }
value值:在springMVC框架中,我們通過@RequestMapping中設置的value的值來執行controller函數,比如上邊的controller中value=testPost,那么在前台訪問時就是:action="testPost.do"。
method值:這里的method值是post,這個類型必須和前台的類型一致,比如這段代碼前台是method="post",那么后台controller的注解中的設置就應該是method=RequestMethod.POST。
test函數的參數:這里邊的參數必須與前台的相同,如果不同就會接收不到,如果想參數名不同也要接收到的話就要做相應的注解設置@RequestParam("原來的") String 現在的。