Primavera OXM Castor Ejemplo por Sumeet Arora

Primavera OXM Castor Ejemplo

Primavera OXM utilizando Castor: la primavera tiene la característica de xml /objeto de vinculación. Para enlazar el objeto /XML utilización de primavera diferente api. Mapeo XML de ricino es una manera de unir el objeto Java a documento XML. Permite transformar los datos en el objeto java en /de un documento XML. Castor permite al usuario especificar la parte de ella es la configuración de de clasificación /unmarshalling comportamientos utilizando un archivo de asignación XML. Este archivo le dice al entorno de tiempo de ejecución que cómo un objeto Java y documentos XML se relacionarán entre sí

Spring . Castor marshaller se utiliza para convertir el objeto de Java para el documento XML. Y la primavera Castor unmarshaller se utiliza para convertir el documento XML al objeto Java. La información sobre el mapeo objeto se escribe en el archivo de mapeo por separado por el desarrollador

Primavera Castor Ejemplo: Para ejecutar este ejemplo es necesario descargar las dependencias de primavera y Castor tarro.. También puede definir esas dependencias en pom por lo que no necesita descargar tarros separado

pom.xml

. < proyecto xmlns = "http://maven.apache.org/POM /4.0.0 "xmlns: xsi =" http://www.w3.org/2001/XMLSchema-instance "

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; /groupId > Hotel < artifactId > la primavera-castor-ejemplo < /artifactId > Hotel < versión > 0.0.1-SNAPSHOT < /versión > Hotel < propiedades > Hotel < la primavera. versión > 3.2.3.RELEASE < /spring.version> Hotel < /propiedades >

< > dependencias;


< la dependencia >

< groupId > org.springframework < /groupId > Hotel < artifactId > la primavera-core < /artifactId > Hotel < versión > $ {spring.version} < /versión > Hotel < /dependencia > Hotel < la dependencia > Hotel < groupId > org.springframework < /groupId > Hotel < artifactId > la primavera al contexto < /artifactId > Hotel < versión > $ {spring.version } < /versión > Hotel < /dependencia > Hotel Hotel < la dependencia > Hotel < groupId > org.springframework < /groupId >

< artifactId > la primavera-OXM < /artifactId > Hotel < versión > $ {spring.version} < /versión > Hotel < /dependencia > Hotel Hotel < la dependencia > Hotel < groupId > org.codehaus.castor < /groupId > Hotel < artifactId > ricino < /artifactId > Hotel < versión > 1,2 < /versión > Hotel < /dependencia > Hotel < la dependencia > Hotel < groupId > xerces < /GroupID > Hotel < artifactId > xercesImpl < /artifactId > Hotel < versión > 2.8.1 < /versión > Hotel < /dependencia >


< /dependencias > Hotel < /proyecto >

StudentInfo.java

com.evon.castor.example paquete;

clase pública StudentInfo {

Identificación privado de largo;

private String nombre;

getId larga público () {

volver Identificación;

}

vacío setId pública (long id) {

this.id = id;

}

public String getName () {

volver nombre;

}

public void setName (String nombre) {

this.name = nombre;

}

Override

public String toString () {

volver "StudentInfo [id =" + Identificación + ", name =" + nombre + "]";

}

}

Lo anterior es el objeto modelo que vamos a enlazar con el documento XML. Ahora vamos a escribir un archivo Java que reunir y unmarsahel el objeto Java

XMLConverter.java

paquete com.evon.castor.example.;

java.io.FileInputStream importación;

java.io.FileOutputStream importación;

java.io.IOException importación;

javax.xml.transform.stream.StreamResult importación;

javax.xml.transform.stream.StreamSource importación;

org.springframework.oxm.Marshaller importación;

org.springframework.oxm.Unmarshaller importación;

clase pública XMLConverter {

privada estática Cadena ARCHIVO final = "student.xml";

privada StudentInfo studentObj = new StudentInfo ();

marshaller privada Marshaller;

unmarshaller privada Unmarshaller;

public void setMarshaller (Marshaller marshaller) {

this.marshaller = marshaller;

}

public void setUnmarshaller (Unmarshaller unmarshaller) {

this.unmarshaller = unmarshaller;

}

public void saveStudentInfo () throws IOException {

FileOutputStream flujoSalida = null;

try {

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

flujoSalida = new FileOutputStream (FILE);

studentObj.setId (1);

studentObj.setName ("Sumit");

this.marshaller.marshal (studentObj, nuevo StreamResult (flujoSalida));

System.out.println ("StudentInfo" + studentObj + "guardado en student.xml archivo.");

} finally {

si (flujoSalida! = null) {

outputStream.close ();

}

}

}

public void loadStudentInfo () throws IOException {

FileInputStream