假设前台通过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 现在的。