Spring OXM Castor Exempel från Sumeet Arora

Spring OXM Castor Exempel

Spring OXM använder Castor: Våren har funktion i xml /objektbindning. Att binda Objekt /XML våren använda olika api. Castor XML kartläggning är ett sätt att binda Java-objekt till XML-dokument. Det gör det möjligt att omvandla informationen i java objekt till /från ett XML-dokument. Castor tillåter användaren att ange en del av det är konfigurationen av range /unmarshalling beteenden med hjälp av en xml mappningsfil. Denna fil talar om körning miljö som hur en java-objekt och XML-dokument skall förhålla sig till varandra

Spring. Castor marshaller används för att omvandla Java-objekt till XML-dokumentet. Och våren Castor unmarshaller används för att konvertera XML-dokument tillbaka till Java-objekt. Informationen om objektet kartläggning är skrivet i mappningsfil separat genom utvecklare

Spring Castor Exempel: att köra det här exemplet behöver du ladda ner våren och Castor burk beroenden.. Du kan också definiera dessa beroenden i pom så att du inte behöver ladda ner burkar separat

POM.XML

. < projektet xmlns = "http://maven.apache.org/POM /4.0.0 "xmlns: xsi =" http://www.w3.org/2001/XMLSchema-instance "Omdömen xsi: schemaLocation =" http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

< modelVersion > 4.0.0 < /modelVersion >

< GroupID > com.evon.castor.example < /gruppid >

< artifactId > fjäder castor-exempel < /artifactId >

< version > 0.0.1-SNAPSHOT < /version >

< egenskaper >

< våren. version > 3.2.3.RELEASE < /spring.version>

< /egenskaper >

< beroenden >


< beroendet >

< GroupID > org.springframework < /GroupID >

< artifactId > våren-core < /artifactId >

< version > $ {spring.version} < /version >

< /beroende >

< beroendet >

< GroupID > org.springframework < /GroupID >

< artifactId > fjäder sammanhang < /artifactId >

< version > $ {spring.version } < /version >

< /beroendet >


< beroendet >

< GroupID > org.springframework < /GroupID >

< artifactId > fjäder oxm < /artifactId >

< version > $ {spring.version} < /version >

< /beroendet >


< beroendet >

< GroupID > org.codehaus.castor < /GroupID >

< artifactId > hjul < /artifactId >

< version > 1,2 < /version > ,

< /beroendet >

< beroendet >

< GroupID > Xerces < /GroupID >

< artifactId > xercesImpl < /artifactId >

< version > 2.8.1 < /version >

< /beroendet >


< /beroenden >

< /projekt >

StudentInfo.java

paketet com.evon.castor.example;

public class Student {Omdömen privata lång id;

private String namn;

publik lång getId () {Review retur id;

}

public void setId (lång id) {Omdömen this.id = id;

}

public String getName () {Review återvända namn;

}

public void setName (String namn) {

this.name = namn;

}

Override

public String toString () {Review tillbaka "Student [id =" + id + ", name =" + namn + "]";

}

}

ovan är modellen föremål som vi kommer att binda till XML-dokumentet. Nu kommer vi att skriva en Java-fil som kommer att uppbringa och unmarsahel Java objektet

XMLConverter.java

paket com.evon.castor.example.

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import javax.xml.transform.stream.StreamResult;

import javax.xml.transform.stream.StreamSource;

import org.springframework.oxm.Marshaller;

import org.springframework.oxm.Unmarshaller;

public class XMLConverter {Omdömen private static final String FILE = "student.xml";

privat Student studentObj = new Student ();

privat Marshaller marshaller;

privat Unmarshaller unmarshaller;

public void setMarshaller (Marshaller marshaller) {Omdömen this.marshaller = marshaller;

}

public void setUnmarshaller (Unmarshaller unmarshaller) {Omdömen this.unmarshaller = unmarshaller;

}

public void saveStudentInfo () kastar IOException {Omdömen Fileoutputstream Output = null;

try {

System.out.println ("--- Marshaller ---");

Output = ny Fileoutputstream (FIL);

studentObj.setId (1);

studentObj.setName ("Sumit");

this.marshaller.marshal (studentObj, ny StreamResult (Output));

System.out.println ("Student" + studentObj + "sparas student.xml fil.");

} slutligen {Omdömen if (Output = null!) {

outputStream.close ();

}

}

}

public void loadStudentInfo () kastar IOException {Omdömen Fileinputstream Omdömen