1、使用HttpServletRequest获取。
@RequestMapping("/login.do") public String login(HttpServletRequest request){ String name = request.getParameter("name") String pass = request.getParameter("pass") }
2、使用@RequestParam注解
@RequestMapping("/login.do")
public String login(HttpServletRequest request,
String name,
@RequestParam("pass")String password) // 表单属性是pass,用变量password接收
{
syso(name);
syso(password)
}
3、使用自动机制封装成实体参数
<form action="login.do"> 用户名:<input name="name"/> 密码:<input name="pass"/> <input type="submit" value="登陆"> </form> //封装的User类 public class User{ private String name; private String pass; }
@RequestMapping("/login.do") public String login(User user) { syso(user.getName()); syso(user.getPass()); }
3、指定前端url请求参数名称与方法名一致,
.指定前端url请求参数名称与方法名一致,见下图,这种方式简单来说就是url请求格式中的参数需要与方法的参数名称对应上,举个例子,这么一个url请求http://localhost:8080/0919/test1?name=xxx&pwd=yyy,在指定的控制器类上加上Controller注解,同时指定RequestMapping注解即可,当请求路径参数与方法参数匹配上时会自动注入
4、第四种方式是通过PathVariable注解来绑定请求路径的参数,参考代码见下
这种情况简单来说就是url中采用动态绑定的形式表示,之后在方法中指定的参数通过PathVariable来将请求的url中的参数绑定到方法参数,这里在不指定PathVariable注解的具体值时按照请求路径中的动态变量顺序与注解顺序一致即可注入 ,如果想指定注入,那么指定PathVariable注解的值与动态变量的名一致即可特定注入。比如请求路径是这个http://localhost:8080/0919/test4/111/222
5、.第五种方式是通过RequestParam注解来获取,具体代码见下
6、第六种方式是通过ModelAttribute方式来注入参数,具体代码见下