SpringMVC的参数绑定-基本类型绑定
用户请求服务器的时候会给后台传递参数, 如何来快速的接收到用户传递的参数?可以使用参数绑定来解决这个问题
传统方法来进行传递参数
在Controller中的方法的形式参数上直接声明HttpServletRequest, HttpServletResponse , HttpSession
@RequestMapping("login01.action")
public ModelAndView login(HttpServletRequest req){
//获取集合
List<Person> list=Personutil.findAll();
String name= req.getParameter("name");
String password= req.getParameter("password");
System.out.println(name);
System.out.println(password);
ModelAndView modelAndView=new ModelAndView();
modelAndView.setViewName("main");
return modelAndView;
}
基本类型参数绑定来传递参数
传入的参数的名字和本方法的形参名字一致时
这个时候@RequestParam注解才会生效,并且只能是基本类型和字符串
浏览器传: name=jack&password=1234
方法形参: test03(Strnig name,String password)
@RequestMapping("login02.action")
public ModelAndView login02(String name,String password){
//获取集合
List<Person> list=Personutil.findAll();
System.out.println(name);
System.out.println(password);
ModelAndView modelAndView=new ModelAndView();
modelAndView.setViewName("main");
return modelAndView;
}
传入的参数的名字和本方法的形参名字不一致时(不常用)
浏览器传: name=jack&password=1234
方法形参: test03(Strnig name01,String password)
这时不能进行参数绑定,必须使用@RequestParam注解
@RequestMapping("login02.action")
public ModelAndView login02(@RequestParam(value="name",required = true,defaultValue = "123") String name,String password){
//获取集合
List<Person> list=Personutil.findAll();
System.out.println(name);
System.out.println(password