第一种收取参数方式:数据类型收取参数
//第一种收取参数的方式:数据类型收取参数
@RequestMapping("/reg")
@ResponseBody //这个注解的意思是 返回给前端的json数据
public Map reg(String adminName, String adminPwd, String adminPwdR) {
System.out.println("adminName = " + adminName);
System.out.println("adminPwd = " + adminPwd);
System.out.println("adminPwdR = " + adminPwdR);
Map codeMap = new HashMap();
if (!adminPwd.equals(adminPwdR)) {
codeMap.put("code", "4001");
codeMap.put("msg", "你输入的密码和重复密码不一致,注册失败");
return codeMap;
}
if (adminName.length()<=0) {
codeMap.put("code", "4402");
codeMap.put("msg", "adminName表单填写完整");
return codeMap;
}
if (adminPwd.length()<=0){
codeMap.put("code", "4402");
codeMap.put("msg", "adminPwd表单填写完整");
return codeMap;
}
codeMap.put("code", 0);
codeMap.put("msg", "注册成功");
return codeMap;
}
第二种收取参数的方式:实体类收取参数(传参)
//第二种收取参数的方式叫做:实体类收取参数(传参)
@RequestMapping("/regByBean")
public Map regByBean(AdminInfo adminInfo){
System.out.println("adminInfo = " + adminInfo);
Map codeMap = new HashMap();
codeMap.put("code", 0);
codeMap.put("msg", "注册成功");
return codeMap;
}
第三种收取参数的方式:ajax 收取数组/集合
//第三种收取参数的方式:ajax 收取数组/集合
@RequestMapping("/ajax03")
@ResponseBody
public Map ajax03(@RequestParam("ids[]") List ids){ //前端 ids[] 后台ids
//当前后端的参数不一致时,需要注解进行调整
for (Integer id : ids) {
System.out.println("id = " + id);
}
Map codeMap = new HashMap();
codeMap.put("code", 0);
codeMap.put("msg", "注册成功");
codeMap.put("data", ids);
return codeMap;
}
第四种收取参数的方式:ajax 接收json数据
@RequestMapping("/ajax04")
@ResponseBody
public Map ajax04(@RequestBody AdminInfo adminInfo){ //@RequestBody 注解就是指的是 前端用json请求
System.out.println("adminInfo = " + adminInfo);
Map codeMap = new HashMap();
codeMap.put("code", 0);
codeMap.put("msg", "请求访问成功");
codeMap.put("data", adminInfo);
return codeMap;
}
第五种收取参数的方式:接收前端传来的多个对象
@RequestMapping("/ajax05")
@ResponseBody
public Map ajax05(@ModelAttribute Lover lover, @ModelAttribute Dog dog){ //ModelAttribute 模型绑定
System.out.println("lover = " + lover);
System.out.println("dog = " + dog);
Map codeMap = new HashMap();
codeMap.put("code", 0);
codeMap.put("msg", "请求访问成功");
codeMap.put("data1", lover);
codeMap.put("data2", dog);
return codeMap;
}
第六种收取参数的方式:json 收取多个对象
//@GetMapping("/ajax06")
@RequestMapping("/ajax06")
@ResponseBody //@GetMapping 不能和 @ResponseBody 同时使用,无法拿到参数
public Map ajax06(@RequestBody List loverList){ //@RequestBody 他是方法体中拿取的数据,所以不能使用Get请求!!
for (Lover lover : loverList) {
System.out.println("lover = " + lover);
}
Map codeMap = new HashMap();
codeMap.put("code", 0);
codeMap.put("msg", "请求访问成功");
codeMap.put("data", loverList);
return codeMap;
}
第七种收取参数的方式:收取map集合传参
@RequestMapping("/ajax07")
@ResponseBody //十分常用,servlet 多表的动态参数获取,就是用的map 可以搞定一切!!!
public Map ajax07(@RequestBody Map map){
System.out.println("map的adminName = " + map.get("adminName"));
Map codeMap = new HashMap();
codeMap.put("code", 0);
codeMap.put("msg", "请求访问成功");
codeMap.put("data", map);
return codeMap;
}
第八种收取参数的方式:收取对象+常用类型 混合
@RequestMapping("/ajax08")
@ResponseBody
public Map ajax08(Lover lover, @RequestParam(value = "limit", required = false, defaultValue = "5") Integer pageSize, Integer page){ //@RequestParam 默认 defaultValue = "5" 5页 required = false 为false时参数可带可不带
System.out.println("lover = " + lover);
System.out.println("page = " + page);
System.out.println("pageSize = " + pageSize);
return null;
}