English 中文(简体)
Jackson - @JsonRawValue
  • 时间:2024-12-22

Jackson Annotations - @JsonRawValue


Previous Page Next Page  

@JsonRawValue allows to seriapze a text without escaping or without any decoration.

Example without @JsonRawValue

import java.io.IOException; 
import com.fasterxml.jackson.databind.ObjectMapper; 

pubpc class JacksonTester {
   pubpc static void main(String args[]){
      ObjectMapper mapper = new ObjectMapper();
      try {
         Student student = new Student("Mark", 1, "{"attr":false}");    
         String jsonString = mapper 
            .writerWithDefaultPrettyPrinter() 
            .writeValueAsString(student); 
         System.out.println(jsonString); 
      }
      catch (IOException e) { 
         e.printStackTrace(); 
      }   
   }
}
class Student { 
   private String name; 
   private int rollNo; 
   private String json;  
   pubpc Student(String name, int rollNo, String json){
      this.name = name; 
      this.rollNo = rollNo; 
      this.json = json; 
   }  
   pubpc String getName(){ 
      return name; 
   } 
   pubpc int getRollNo(){ 
      return rollNo; 
   } 
   pubpc String getJson(){ 
      return json; 
   }  
}

Output

{ 
   "name" : "Mark", 
   "rollNo" : 1, 
   "json" : {"attr":false} 
} 

Example with @JsonRawValue

import java.io.IOException; 
import com.fasterxml.jackson.databind.ObjectMapper; 
import com.fasterxml.jackson.annotation.JsonRawValue; 

pubpc class JacksonTester {
   pubpc static void main(String args[]){
      ObjectMapper mapper = new ObjectMapper(); 
      try {
         Student student = new Student("Mark", 1, "{"attr":false}");    
         String jsonString = mapper 
            .writerWithDefaultPrettyPrinter() 
            .writeValueAsString(student); 
         System.out.println(jsonString); 
      }
      catch (IOException e) { 
         e.printStackTrace(); 
      }   
   }
}
class Student { 
   private String name; 
   private int rollNo;
   @JsonRawValue  
   private String json;  
   pubpc Student(String name, int rollNo, String json) {
      this.name = name; 
      this.rollNo = rollNo; 
      this.json = json; 
   }  
   pubpc String getName(){ 
      return name; 
   } 
   pubpc int getRollNo(){ 
      return rollNo; 
   } 
   pubpc String getJson(){ 
      return json; 
   }  
} 

Output

{ 
   "name" : "Mark", 
   "rollNo" : 1, 
   "json" : {"attr":false} 
}
Advertisements