JAXB hello world

JAXB hello world
package  test;

import  java.io.File;
import  java.io.FileOutputStream;
import  java.io.StringReader;
import  java.io.StringWriter;

import  javax.xml.bind.JAXBContext;
import  javax.xml.bind.Marshaller;
import  javax.xml.bind.Unmarshaller;
import  javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
public   class  HelloWorld  {

  
private String hello;
  
private Integer world;

  
public String getHello() {
    
return hello;
  }


  
public void setHello(String hello) {
    
this.hello = hello;
  }


  
public Integer getWorld() {
    
return world;
  }


  
public void setWorld(Integer world) {
    
this.world = world;
  }


  
public String toString() {
    
return hello + "-" + world;
  }


  
public static void main(String[] args) throws Exception {

    
// Set up file and JAXB context
    final File file = new File("hello.xml");
    
    JAXBContext context 
= JAXBContext.newInstance(HelloWorld.class);

    
// Creates a HelloWorld object
    HelloWorld hw = new HelloWorld();
    hw.setHello(
"Hello !!!");
    hw.setWorld(
1234);

    
// From a HelloWorld object creates a hello.xml file
    Marshaller m = context.createMarshaller();
    StringWriter sw 
= new StringWriter();
    m.marshal(hw, sw);
    System.out.println(sw.toString());
    m.marshal(hw, 
new FileOutputStream(file));

    
// From the hello.xml file creates a HelloWorld object
    Unmarshaller um = context.createUnmarshaller();
    StringReader sr 
= new StringReader(sw.toString());
    HelloWorld hw2 
= (HelloWorld) um.unmarshal(sr);
    System.out.println(hw2);

  }

}


你可能感兴趣的:(JAXB hello world)