// Created on savesnippets.com · https://savesnippets.com/iGQGds0ab8aSTe import com.fasterxml.jackson.annotation.*; import com.fasterxml.jackson.databind.ObjectMapper; @JsonInclude(JsonInclude.Include.NON_NULL) public class ApiUser { @JsonProperty("user_id") // map "user_id" ↔ userId private long userId; @JsonProperty("display_name") private String displayName; @JsonIgnore // never appears in JSON private String passwordHash; @JsonProperty(defaultValue = "0") private int loginCount; @JsonProperty("created_at") private String createdAt; // Constructor for deserialization @JsonCreator public ApiUser( @JsonProperty("user_id") long userId, @JsonProperty("display_name") String displayName) { this.userId = userId; this.displayName = displayName; } // getters / setters omitted } // Module config example class Demo { static final ObjectMapper MAPPER = new ObjectMapper() .configure(com.fasterxml.jackson.databind.DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); }