JavaでJacksonAPIを使用した@JsonRawValueアノテーションの使用は何ですか?
@Target(value={ANNOTATION_TYPE,METHOD,FIELD}) @Retention(value=RUNTIME) public @interface JsonRawValue
以下の例では、 empAddress フィールドはJSON文字列です。このJSON文字列は、従業員の最終的なJSON文字列の一部としてシリアル化されます オブジェクト。
例
import com.fasterxml.jackson.annotation.JsonRawValue; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.core.JsonProcessingException; public class JsonRawValueAnnotationTest { public static void main(String args[]) throws JsonProcessingException { ObjectMapper mapper = new ObjectMapper(); String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(new Employee()); System.out.println(jsonString); } } // Employee class class Employee { public int empId = 115; public String empName = "Sai Chaitanya"; @JsonRawValue public String empAddress = "{\"doorNumber\": 1118, \"street\": \"IDPL Colony\", " + "\"city\": \"Hyderabad\"}"; }>
出力
{ "empId" : 115, "empName" : "Sai Chaitanya", "empAddress" : {"doorNumber": 1118, "street": "IDPL Colony", "city": "Hyderabad"} }
-
JavaのJacksonを使用してJSONのフィールド名を変更するにはどうすればよいですか?
ジャクソンアノテーション@JsonProperty シリアル化中にプロパティまたはメソッドで使用されます または逆シリアル化 JSON 。オプションの「名前」が必要です ’パラメータ これは、プロパティ名が「キー」と異なる場合に役立ちます ’名前 JSON 。デフォルトでは、キー名がプロパティ名と一致する場合、値はプロパティ値にマップされます。 以下の例では、フィールド名を変更できます @JsonPropertyアノテーションを使用したJSONで 。 例 import java.io.IOException; import com.fasterxml.jackson.databind.
-
JavaでのStringWriterの重要性は何ですか?
StringWriter クラスはライターのサブクラスです クラスとそれは文字列を出力ストリームに書き込みます。文字列を書き込むために、この文字ストリームは文字列を文字列バッファに収集します 次に、文字列を作成しました。 StringWriterのバッファは、データに応じて自動的に大きくなります。 StringWriterクラスの重要なメソッドは、 write()、append()、getBuffer()です。 、 flush() およびclose() 。 構文 public class StringWriter extends Writer 例 import java.io.*; publ