(一)SpringMVC Controller 接受参数的方式
(1) 前端传递的参数, 在 springMVC 的 controller 中使用基本数据类型或者 String 类型进行接受
在前端有一个 form 表单, 需要传递姓名和年龄, 在 controller 可以采用基本数据类型或者 String 进行接受,
- <form action="demo" method="post">
- 名字:<input type="text" name="name"/><br/>
- 年龄:<input type="text" name="age"/><br/>
- <input type="submit" value="提交"/><br/>
- </form>
此时值需要接受参数的名称和传递的参数名称一致就行
- fun01(String name,int age)
- @Controller
- public class DemoController {
- @RequestMapping("/demo")
- public String fun01(String name,int age) {// 字符串的返回值代表代表要跳转的页面
- System.out.println(name);
- System.out.println(age);
- System.out.println("指定了 demo");
- // 返回值最好写全路径, 全路径就是以 "/" 开头的路径, 否则就是相对路径,
- // 相对路径就是以相对当前方法的映射路径, 例如如果返回值是 "main.jsp", 是相对路径, 最后的绝对路径是
- //"demo/main.jsp"
- return "/main.jsp";
- }
- }
(2) 前端传递的参数, 在 springMVC 的 controller 中使用 类类型进行接受 (走 get/set 方法)
此时需要 类类型的属性名称与前端传递参数的参数名称一致
- @Controller
- public class DemoController {
- @RequestMapping("/demo")
- public String fun01(People peo) {// 字符串的返回值代表代表要跳转的页面
- System.out.println(peo.getName());
- System.out.println(peo.getAge());
- System.out.println("指定了 demo");
- // 返回值最好写全路径, 全路径就是以 "/" 开头的路径, 否则就是相对路径,
- // 相对路径就是以相对当前方法的映射路径, 例如如果返回值是 "main.jsp", 是相对路径, 最后的绝对路径是
- //"demo/main.jsp"
- return "/main.jsp";
- }
- }
(3) 前端传递的参数, 在 springMVC 的 controller 中使用 HttpServletRequest 进行接受
- @Controller
- public class DemoController {
- @RequestMapping("/demo")
- public String fun01(HttpServletRequest req) {// 字符串的返回值代表代表要跳转的页面
- System.out.println("指定了 demo");
- // 返回值最好写全路径, 全路径就是以 "/" 开头的路径, 否则就是相对路径,
- // 相对路径就是以相对当前方法的映射路径, 例如如果返回值是 "main.jsp", 是相对路径, 最后的绝对路径是
- //"demo/main.jsp"
- System.out.println(req.getParameter("name"));
- System.out.println(req.getParameter("age"));
- return "/main.jsp";
- }
- }
(4) 前端传递的参数, 在 springMVC 的 controller 中 同时使用上述三中方法进行接受
- @Controller
- public class DemoController {
- @RequestMapping("/demo")
- public String fun01(People peo, String name,int age,HttpServletRequest req) {// 字符串的返回值代表代表要跳转的页面
- System.out.println(name);
- System.out.println(age);
- System.out.println(peo.getName());
- System.out.println(peo.getAge());
- System.out.println("指定了 demo");
- // 返回值最好写全路径, 全路径就是以 "/" 开头的路径, 否则就是相对路径,
- // 相对路径就是以相对当前方法的映射路径, 例如如果返回值是 "main.jsp", 是相对路径, 最后的绝对路径是
- //"demo/main.jsp"
- System.out.println(req.getParameter("name"));
- System.out.println(req.getParameter("age"));
- return "/main.jsp";
- }
- }
- (二)
来源: http://www.bubuko.com/infodetail-2806846.html