java - Jackson JSON 字段映射大小写?

我不清楚 jackson 如何处理映射字段中的大写。如果有人可以提供帮助,我将不胜感激。

{"user":{"username":"user@host.com","password":"pwd","sendercompid":"COMPID","service":{"host":"address","port":6666,"service":"S1","serviceAsString":"s1"}},"MDReqID":"ghost30022","NoRelatedSym":1,"Symbol":["GOOG"],"MarketDepth":"0","NoMDEntryTypes":3,"MDEntryType":["0","1","2"],"SubscriptionRequestType":"1","AggregatedBook":"N"}:

上面是我的json,下面是我的异常(exception)......

com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "MDReqID" (class com.myco.qa.fixrest.MarketDataRequest), not marked as ignorable (10 known properties: , "mdreqID", "marketDepth", "user", "subscriptionRequestType", "aggregatedBook", "mdentryType", "symbol", "mdupdateType", "noRelatedSym", "noMDEntryTypes"])

上面是我的异常(exception),下面是我的类(class)......

public class MarketDataRequest {
    private User user;
    private String MDReqID;
    private char SubscriptionRequestType;
    private int MarketDepth;
    private int MDUpdateType;
    private char AggregatedBook;
    private int NoMDEntryTypes;
    private ArrayList<Character> MDEntryType;
    private int NoRelatedSym;
    private ArrayList<String> Symbol;

    public User getUser() {
        return user;
    }

    public void setUser(User user) {
        this.user = user;
    }

    public String getMDReqID() {
        return MDReqID;
    }

    public void setMDReqID(String MDReqID) {
        this.MDReqID = MDReqID;
    }

    public char getSubscriptionRequestType() {
        return SubscriptionRequestType;
    }

    public void setSubscriptionRequestType(char subscriptionRequestType) {
        SubscriptionRequestType = subscriptionRequestType;
    }

...等等

最佳答案

由于您的 setter 方法被命名为 setMDReqID(…) Jackson 假设变量被命名为 mDReqID 因为 Java 命名约定(变量应该以小写字母开头)。

如果您真的想要大写字母,请使用 @JsonProperty setter 上的注释(或 - 对于序列化 - 在 getter 上),如下所示:

@JsonProperty("MDReqID")
public void setMDReqID(String MDReqID) {
    this.MDReqID = MDReqID;
}

https://stackoverflow.com/questions/15303110/

相关文章:

c# - 使用 C# 调用 json

json - 如何强制将请求正文解析为纯文本而不是 Express 中的 json?

javascript - 未捕获的类型错误 : Cannot read property 'owne

PHP json_encode - JSON_FORCE_OBJECT 混合对象和数组输出

javascript - Javascript对象和JSON对象有什么区别

json - angularjs - ng-重复 : access key and value fr

ios - waitUntilAllTask​​sAreFinished 错误 Swift

java - 用于生成和使用 JSON 的 Controller 的 Spring RequestM

json - 在单行上从 jq 获取输出

java - 使用 GSON 解析 JSON 文件