首先,您不需要重写
Jackson2ObjectMapperBuilder即可添加自定义反序列化器。当您无法添加
@JsonDeserialize注释时,应使用此方法。您应该使用
@JsonDeserialize或覆盖
Jackson2ObjectMapperBuilder。
缺少的是
@RequestBody注释:
@RestControllerpublic class JacksonCustomDesRestEndpoint { @RequestMapping(value = "/role", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE) @ResponseBody public Object createRole(@RequestBody Role role) { return role; }}@JsonDeserialize(using = RoleDeserializer.class)public class Role { // ......}public class RoleDeserializer extends JsonDeserializer<Role> { @Override public Role deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException { // ................. return something; }}


