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