SpringMVC接收参数主要通过以下几种方式:
处理request uri 部分(这里指uri template中variable,不含queryString部分)的注解: @PathVariable;
处理request header部分的注解: @RequestHeader, @CookieValue;
处理request body部分的注解:@RequestParam, @RequestBody;
处理attribute类型是注解: @SessionAttributes, @ModelAttribute;
1参数写在Controller的方法的形参中,适用于get,post方式提交,post方式的时候编码方式需设置为:x-www-form-urlencoded转换为键值对形式,参数名必须完全相同才能映射到,为此,使用下面5中的方法,可以实现别名转换。注意:以x-www-form-urlencoded格式的post请求 与get请求的异同同:都把参数编为键值对形式name=susa&pswd=1233异: get的时候,这个键值对拼在url后面,post的时候单独保存
通过HttpServletRequest接收,post方式和get方式都可以,但不能接收ison,post方式的时候编码方式需设置为:x-www-form-urlencoded转换为键值对
如果username 或者 password 为空,不能直接拿来做参数,可能会抛空指针异常3通过一个bean来接收post方式和get方式都可以。参数?key1=val1&key2=val2的方式加在url后面即可。post方式不想让参数拼接在url后面的话,可以将参数放在body中,编码方式需设置为:x-www-form-urlencoded