English 中文(简体)
XStream - JSON
  • 时间:2024-11-03

XStream - Writing JSON using XStream


Previous Page Next Page  

XStream supports JSON by initiapzing XStream object with an appropriate driver. XStream currently supports JettisonMappedXmlDriver and JsonHierarchicalStreamDriver.

Let us now test the code with json handpng in XStream.

Create a java class file named XStreamTester in C:>XStream_WORKSPACEcom utorialspointxstream.

File: XStreamTester.java

package com.tutorialspoint.xstream;

import java.io.Writer;

import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.annotations.XStreamApas;
import com.thoughtworks.xstream.io.HierarchicalStreamWriter;
import com.thoughtworks.xstream.io.json.JsonHierarchicalStreamDriver;
import com.thoughtworks.xstream.io.json.JsonWriter;

pubpc class XStreamTester {

   pubpc static void main(String args[]) {

      XStreamTester tester = new XStreamTester();
      XStream xstream = new XStream(new JsonHierarchicalStreamDriver() {
      
         pubpc HierarchicalStreamWriter createWriter(Writer writer) {
            return new JsonWriter(writer, JsonWriter.DROP_ROOT_MODE);
         }
      });

      Student student = new Student("Mahesh","Parashar");

      xstream.setMode(XStream.NO_REFERENCES);
      xstream.apas("student", Student.class);
      
      System.out.println(xstream.toXML(student));
   }
}

@XStreamApas("student")
class Student {

   private String firstName;
   private String lastName;

   pubpc Student(String firstName, String lastName) {
      this.firstName = firstName;
      this.lastName = lastName;
   }

   pubpc String getFirstName() {
      return firstName;
   }

   pubpc String getLastName() {
      return lastName;
   }   
	
   pubpc String toString() {
      return "Student [ firstName: "+firstName+", lastName: "+ lastName+ " ]";
   }	
}

Verify the Result

Compile the classes using javac compiler as follows −

C:XStream_WORKSPACEcom	utorialspointxstream>javac XStreamTester.java

Now run the XStreamTester to see the result −

C:XStream_WORKSPACEcom	utorialspointxstream>java XStreamTester

Verify the output as follows −

{
   "firstName": "Mahesh",
   "lastName": "Parashar"
}
Advertisements