1

特定の JSON 文字列を Java オブジェクトに変換する必要があります。JSON処理にJacksonを使用しています。これが私のJavaクラスです:

public class RequestClass {

    String email_id;
    String password;

    public String getEmailId() {
        return email_id;
    }

    public String getPassword() {
        return password;
    }

    @Override
    public String toString(){

        return email_id+" "+password;
    }
}

Web サービス コードは次のとおりです。

@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
@Path("/dbconnect3")
public String connectToDbTest3(RequestClass rc) {
    System.out.println("connectToDbTest3");
    String email_id = rc.getEmailId();
    String password = rc.getPassword();
    System.out.println(email_id + " " + password);
}

UnrecognizedPropertyExceptionこれにより、メッセージで例外がスローされます"Unrecognized field "email_id" (Class jaxrs.RequestClass), not marked as ignorable"

@JsonIgnoreProperties(ignoreUnknown = true)Java クラスで注釈を使用していない場合、 09 行目に得られる出力は次のとおりです。

null myPassword

そのため、認識されていないフィールドを無視したくなく、代わりに の値を取得したいと考えていますemail_id

email_idパスワードが正常に取得されたときに認識されないフィールドとして表示される理由を教えてください。

4

1 に答える 1

2

以下@JsonProperty("email_id")のようなものの前に追加するだけです:getEmailId()

@JsonProperty("email_id")
public String getEmailId() {
   return email_id;
}
于 2013-03-01T10:59:53.900 に答える