Cómo convertir contenido XML a formato Java
El siguiente código implementa las siguientes 4 funciones básicas:
1. Convertir el tipo de objeto a tipo xml e imprimirlo en la consola.
2. tipo xml Convertir a tipo de objeto e imprimir en la consola
3. Convertir el tipo de objeto a tipo xml y escribir en un archivo XML
4. Leer el archivo XML y cargarlo en el tipo de objeto correspondiente
p>
============================================== = =========
1. Cargue el paquete jar xstream-1.4.2.jar requerido para XStream
xpp3_min-1.1.4c.jar
xmlpull-1.1.3.1.jar
2. Cree la clase de entidad User.java
paquete com.entity
/** <. /p >
* Clase de entidad
*/
Clase pública Usuario {
Nombre de usuario de cadena privada
Palabra de contraseña de cadena privada; ;
Cadena privada Hora registrada
Usuario público() { }
this.hora registrada = Hora registrada
}
public String getUserName() {
return userName;
}
public void setUserName(String nombre de usuario) {
this .userName = nombre de usuario
}
public String getPassWord() {
devolver contraseña
}
public void setPassWord(String contraseña) {
this.passWord =
}
public String getRegisteredTime() {
return hora registrada
}
public void setRegisteredTime(String hora registrada) {
this.registeredTime = hora registrada
}
}
3. Clase de implementación de función de escritura
paquete com.switcher
importar java.io.FileInputStream; >importar java.io.FileNotFoundException
importar java.io.FileOutputStream
importar java.text.SimpleDateForms
3.
importar java.text.SimpleDateFormat;
importar java.util.P>
importar com.entity.User
importar com.thinkworks.xstream; .XStream;
/**
*
*
* Utilice XStream para serializar la mayoría de los objetos Java sin ningún mapeo.
*
* *
* Utilice XStream para serializar la mayoría de los objetos Java sin ningún mapeo.
* El nombre del objeto se convierte en el nombre del elemento en el XML generado y la cadena de la clase constituye el contenido del elemento en el XML.
* Las clases serializadas usando XStream no necesitan implementar la interfaz Serializable.
* XStream es una herramienta de serialización, no una herramienta de enlace de datos.
* Las clases no se pueden generar a partir de archivos XML o de definición de esquema XML (XSD).
*/
clase pública SwitchXML {
/*
* A XStream no le importa que los campos de la clase de serialización/deserialización Son sexo visible.
* Serializar/deserializar campos de una clase no requiere métodos getter y setter.
* Las clases de serialización/deserialización no requieren un constructor predeterminado.
*/
XStream privado xStream = nuevo XStream();
Cadena privada xmlPath = "D:/userdata.xml"; p>/ 1.out.println("obj -> xml");
String xml = xStream.toXML(usuario);
System.out.println(xml);
return xml;
}
// 2. xml ->obj (convierte el tipo xml en tipo de objeto e imprime)
public void printObj(String xml) {
System.out.printObj(String xml) {
System.out.printObj(String xml)println("xml -> obj" )
Usuario u = (Usuario) xStream.fromXML(xml);
System.out.println(u.getUserName() + " " + u.getPassWord() + " " + u.getRegisteredTime());
}
}
// 3. Convierta el tipo de objeto a tipo xml y escríbalo en un archivo XML (otro También hay formatos disponibles, como archivos txt)
public void writeXML( Usuario usuario) {
prueba {
FileOutputStream fs = new FileOutputStream(xmlPath);
xStream.toXML(usuario, fs);
} captura ( FileNotFoundException e) {
e.printStackTrace()
}
}
}
}
// 4. Lea el archivo XML y cárguelo en el objeto correspondiente en tipo
lector vacío públicoXML() {
Usuario(xmlPath);
xStream.toXML(user.fs); (usuario.fs);
xStream.toXML(usuario.fs);
xStream.toXML(usuario.fs)fs
} captura ( p>
Usuario usuario = nuevo Usuario();
FileInputStream fis = null
prueba {
fis = nuevo FileInputStream( xmlPath);
} captura (FileNotFoundException e) {
e.printStackTrace()
}
}
xStream.fromXML(fis, usuario);
//Imprimir información del objeto
System.out.out.println(user.getUserName() + "- " + usuario .getPassWord() + "-"
>
+ user.getRegisteredTime());
}
public static void main(String[] args) {
// Nombre de usuario< / p>
String nombre de usuario = "admin";
// Contraseña
String contraseña = "admin"
// Hora de registro
// Contraseña p>
Fecha ahora = nueva fecha();
Formato SimpleDateFormat = nuevo SimpleDateFormat("aaaaMMddHHmmss");
Cadena hora registrada = formato. format(now);
p>
Usuario usuario = nuevo Usuario(nombre de usuario, contraseña, tiempo de registro)
SwitchXML switchXML = new SwitchXML(); p>// 1. Convierta el tipo de objeto a tipo xml e imprima en la consola
String xml = switchXML.printXML(user); ---------- -- --------");
// 2. Convierta el tipo xml en tipo de objeto e imprima en la consola
switchXML.printObj(xml);
p>System.out.println("---------------------"); /p>
// 3. Cambiar el objeto Convierta el tipo a xml y escriba en el archivo XML
switchXML.writeXML(user)
System.out.println; ("------------- --------");
// 4. Lea el archivo XML y cárguelo en el tipo de objeto correspondiente
switchXML.readerXML();
}
// 5.
}