@ResponseBody注解
打上注解后前端返回的所有参数为json格式
@RequestMapping
路径注解,可以取代getmapping postmapping putmapping 等请求
@RequestParam
RequestParam可以接受简单类型的属性,也可以接受对象类型。使用 @RequestParam 注解时,可以指定参数的名称、是否必需、默认值等属性
public String doLogin(@RequestParam(defaultValue="") String username,
@RequestParam(defaultValue="") String password,
@RequestParam(defaultValue="0") int userType,
@RequestParam(defaultValue="") String verifyCode, HttpSession session)
@RequestBody
请求参数只能是请求体里面的参数,如果我们想要将整个请求体绑定到一个Java对象上,可以使用 @RequestBody 注解,如果分别不清前端传递是不是请求体里面的参数可以前端打开F12查看参数传递是 request param还是request body
@ModelAttribute
检查前端请求只能是param类型的参数,用于将请求参数或表单数据绑定到一个Java对象上
@RequestSubBody
如果我们只想要绑定请求体中 address 字段的数据到一个Java对象上,可以使用 @RequestSubBody 注解: 如果只有一个对象数据那么直接用@RequestBody就行
{
"name": "John",
"age": 30,
"address": {
"street": "123 Main St",
"city": "Anytown",
"state": "CA"
}
}
注意
springmvc框架默认发送对象数据时不用@RequestBody注解接受,直接用对象接收就行
但是springmvc如果接受单一参数则需要通过对象来接受,原因是springmvc采用对象接收的
如果要传递单个数据可以前端
const fd = new FormData()
fd.append("string",value)
后端采用@RequestParam("string")String num来接受即可