簡體   English   中英

將對象轉換為JSON控制字段名稱大寫首字母

[英]Converting object to json control fields name upper case first letter

賓語:

@XmlRootElement
public class AccountSyncResponse 
{
        private String Result;
        private String Value;

        public AccountSyncResponse() {}            

        public String getResult() {return Result;}
        public void setResult(String Result) {this.Result = Result;}
        public String getValue() {return Value;}
        public void setValue(String Value) {this.Value = Value;}        
}

其余Web服務:

    @POST
    @Consumes(MediaType.APPLICATION_JSON)
    @Produces(MediaType.APPLICATION_JSON)
    public AccountSyncResponse excute(AccountSyncRequest ASReq) 
    {        
       AccountSyncResponse ASRes = new AccountSyncResponse();
       return ASRes;    
    }

結果是{"result":"Create","value":"123456"}

我需要字段名稱的首字母大寫{"Result":"Create","Value":"123456"}

如何控制結果json字符串中的字段名稱?

您可以使用@XmlElement ,如下所示:

@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class AccountSyncResponse  {

    @XmlElement(name = "Result")
    private String result;

    @XmlElement(name = "Value")
    private String value;

    // Default constructor, getters and setters
}

或者,您可以使用@XmlElement注釋吸氣劑(然后@XmlAccessorType注釋)。


除了JAXB注釋,您可能還需要考慮Jackson。 這是可用於Jersey的流行的Java JSON解析器。 然后,您可以改用@JsonProperty (但是Jackson也可以使用JAXB注釋)。

對於Jackson,根據您的需求,可以使用PropertyNamingStrategy例如PropertyNamingStrategy.UpperCamelCaseStrategy

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM