哈喽大家好,今天跟大家分享下跟客户端调接口,将从客户端接收到的参数使用ObjectMapper转为校验参数非空的VO类时出现的问题。
出现问题的地方:请求的JSON里面字段多于映射的实体类
//将读取的参数转成指定的bean
JSONObject json= JSONObject.fromObject(params.getParams());
ObjectMapper objectMapper = new ObjectMapper();
Test test = objectMapper.readValue(json.toString(), new TypeReference<Test>(){});
System.out.println(test.getName());
Test类
@NotBlank(msg = "姓名不能为空")
private String name;
private Integer age;
org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "age" (Class com.iruidou.mobile.controller.applyauthority.Test), not marked as ignorable
at [Source: java.io.StringReader@1450139d; line: 1, column: 21] (through reference chain: com.iruidou.mobile.controller.applyauthority.Test["age"])
at org.codehaus.jackson.map.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:53)
at org.codehaus.jackson.map.deser.StdDeserializationContext.unknownFieldException(StdDeserializationContext.java:267)
at org.codehaus.jackson.map.deser.std.StdDeserializer.reportUnknownProperty(StdDeserializer.java:673)
at org.codehaus.jackson.map.deser.std.StdDeserializer.han