java后端无法接收到前端传递的json对象
一·可能是因为未使用@RequestBody
在Controller层中,要么使用@RestController要么使用@Controller+@RequestBody在使用的方法前定义。
@RestController
@RequestMapping("/api")
public class Usercontroller {
@RequestMapping("/")
String home() {
return "hello";
}
}
二·可能是因为定义的model类型名称不规范导致的
1.应用场景,引入注解
例如:当我们后端与APP进行数据交互时肯定会遇到需要获取P值的问题,默认情况下传递的P值
均为大写单字母的形式。还有当我们在对接其他业务场景时也会遇到一些不规范的命名方式
isRefuse等以is开头的字段,这些可能是对一些.net接口对接时出现的,
但是java中这种类似的命名方式是不正确的。
那么我们应该如何处理这些类似的情况呢。这里介绍一个注解,@JsonProperty
2.@JsonProperty使用
import com.fasterxml.jackson.annotation.JsonProperty;
@JsonProperty 此注解用于属性上,作用是把该属性的名称序列化为另外一个名称,如把isRefuse属性序列化为isRefuse,@JsonProperty("isRefuse")。
@JsonProperty("isRefuse")
private Boolean isRefuse;
来源:oschina
链接:https://my.oschina.net/u/4092240/blog/4327807