2012-01-03 14 views
5

Quería generar algunos esquemas XML para mi proyecto. Tengo algunas clases de Java, como éste:Generar esquema XML de la clase Java (o lo contrario)

package com.fortresswars.entity; 

import com.fortresswars.entity.properties.Armor; 
import com.jme3.scene.Spatial; 

public abstract class Object extends Thing { 
    public Armor armor; 
    public short hpMax; 
    public boolean walkable = false; 

    public short hpCurrent; 
    public boolean alive; 
    public Spatial object; 

    public GameObject() { 
     this.hpMax = hpMax; 
     this.hpCurrent = hpMax; 
    } 

    public void setAlive(boolean alive) { 
     this.alive = alive; 
    } 

    public void setHpCurrent(short hpCurrent) { 
     this.hpCurrent = hpCurrent; 
    } 

    public void addHpCurrent(short hpToAdd) { 
     this.hpCurrent += hpToAdd; 
    } 
} 

package com.fortresswars.entity; 

import com.jme3.texture.Image; 
import eu.javaspecialists.tools.apt.NoArgsConstructor; 

@NoArgsConstructor 
public abstract class Thing { 
    Image icon; 

    public Thing() { 
    } 
} 

me querían para generar un esquema XML basado en esas clases para mi proyecto, por lo que los otros desarrolladores pueden crear un archivo XML basado en ese Esquema generado y pueden validar la información antes de enviarme. Pero no sé qué es lo mejor, generar un esquema XML basado en una clase o generar una clase basada en un esquema XML. Por favor, ¿podría señalar qué herramientas hay para hacerlo y las ventajas de utilizar cada uno de esos enfoques?

Sé que hay una herramienta llamada JAXB, pero no sé si hace ambos trabajos, o cualquiera de ellos.

Respuesta

2

Hay una herramienta llamada schemagen dentro del directorio JDK bin, que convierte el archivo java source/class en un esquema XML. Vea el documentation.

3

Sí, JAXB puede ir en ambas direcciones (usando anotaciones). Consulte this question para obtener más información y algunos enlaces.

Cuestiones relacionadas