Maj*_*joR 5 spring spring-mvc jackson spring-boot spring-rest
我有一个 spring Rest api,它获取 json 数据并绑定到 pojo GetData。每当我收到未知字段时,它都不会失败或抛出任何异常。我的要求是当它接收到 json 数据中的未知字段时应该抛出错误。
public ResponseEntity<Error> saveLocation(@Valid @RequestBody GetData getdata,BindingResult bindingResults) {
Run Code Online (Sandbox Code Playgroud)
下面是我的 Pojo GetData
public class GetData{
@JsonProperty("deviceID")
@Pattern(regexp="^[\\p{Alnum}][-\\p{Alnum}\\p{L}]+[\\p{Alnum}]$",message = "Not a valid Device Id")
private String deviceID;
@JsonProperty("Coordinates")
@Pattern(regexp="^[\\p{Alnum}\\-][\\.\\,\\-\\_\\p{Alnum}\\p{L}\\s]+|",message = "Coordinates are not valid")
private String coordinates;}
Run Code Online (Sandbox Code Playgroud)
下面是我的 json 请求。
{
"deviceID" : "01dbd619-843b-4197-b954",
"Coordinates" : "12.984012,80.246712",
}
Run Code Online (Sandbox Code Playgroud)
现在,如果我发送带有额外字段的请求,例如国家/地区。它不会抛出任何错误。
{
"deviceID" : "01dbd619-843b-4197-b954",
"Coordinates" : "12.984012,80.246712",
"country" : "dsasa"
}
Run Code Online (Sandbox Code Playgroud)
请建议我如何在 json 请求中发送未知属性时出现错误
您需要配置您的ObjectMapper以处理此类情况:
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, true);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5306 次 |
| 最近记录: |