这篇文章要分享的是springboot 获取参数的方式;
那我就按照请求方式来分类吧;
一、GET请求方式
**1、**我想用类似传参的方式获取参数?或者说用类似方法调用的方式?
1.1
@RequestMapping("/getParam")
public String getParamThroughGet(String aaa,String bbb){
System.out.println(aaa);
System.out.println(bbb);
return null;
}
1.2 这种方式效果跟1.1差不多,但用起来要繁琐---使用@RequestParam 把请求参数和括号里的参数绑定起来
@RequestMapping(value = "/getParamWithRequestParam",method =RequestMethod.GET)
public String getParamWithRequestParam( @RequestParam("aaa") String aaa,@RequestParam(value = "bbb",required = false)String bbb){
System.out.println(aaa);
return null;
}
2、我想看看请求中都有哪些细节?
@RequestMapping("/getParamThroughServlet")
public String getParamThroughServlet( HttpServletRequest request ){
System.out.println(request.getParameter("aaa"));
return null;
}
3、我想用实体类来接收参数
@RequestMapping("/getParamThroughEntity")
public String getParamThroughEntity( User list){
System.out.println(list.getAge().toString());
return null;
}
4、这种方式让我怀疑这样设计的人,居心何在?!使用了类似占位符一样的东西,目前没明白要干什么用。
localhost:8080/ano/getParamDoubtedDanger/11/22
@RequestMapping(value = "/getParamDoubtedDanger/{aaa}/{bbb}" ,method= RequestMethod.GET)
public String getParamDoubtedDanger( @PathVariable int aaa,@PathVariable String bbb){
System.out.println(aaa);
System.out.println(bbb);
return null;
}
5、我想用Map<?T,?T> 来接收参数
@RequestMapping("/maVerUsdr.do")
public ModelAndView maVerUsdr(@RequestBody Map<String, Object> params) {
ModelAndView mav = null;
mav = workorderService.maVerUsdr(params);
return mav;
}
二、POST请求方式
1、用实体类接收
2、用HttpServletRequest接收
3、我想接收表单数据 ,前端用FORM提交到后台的数据应该怎么接收呢?
@RequestMapping(value="/addUser5",method=RequestMethod.POST)
public String addUser5(@ModelAttribute("user") UserModel user) {
System.out.println("username is:"+user.getUsername());
System.out.println("password is:"+user.getPassword());
return "demo/index";
}