Dieses Tutorial zeigt Ihnen, wie Sie JAXB verwenden, um object in Jersey in XML zu konvertieren und an den Benutzer zurückzugeben.
1. Abhängigkeit
Um JAXB mit Jersey zu integrieren, ist keine zusätzliche Abhängigkeit erforderlich. Fügen Sie einfach " jersey-server.jar " hinzu.
2. JAXB-Anmerkung
Objekt mit JAXB-Anmerkung für spätere Konvertierung versehen.
import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement(name = "customer") public class Customer { String name; int pin; @XmlElement public String getName() { return name; } public void setName(String name) { this.name = name; } @XmlAttribute public int getPin() { return pin; } public void setPin(int pin) { this.pin = pin; } }
Das obige Objekt wird in folgendes XML-Format konvertiert.
<customer pin="value"> <name>value</name> </customer>
-
Jersey und XML
Um eine XML-Datei zurückzugeben, kommentieren Sie die Methode mit @Produces (MediaType.APPLICATION__XML) `. Jersey konvertiert das mit JAXB gekennzeichnete Objekt automatisch in eine XML-Datei.
import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import com.mkyong.Customer; @Path("/xml/customer") public class XMLService { @GET @Path("/{pin}") @Produces(MediaType.APPLICATION__XML) public Customer getCustomerInXML(@PathParam("pin") int pin) { Customer customer = new Customer(); customer.setName("mkyong"); customer.setPin(pin); return customer; } }
4. Demo
Wenn das URI-Muster „ xml/customer/\ {param value} “ angefordert wird, wird eine formatierte XML-Datei zurückgegeben.
URL: http://localhost : 8080/RESTfulExample/rest/xml/customer/999
Quellcode herunterladen
Laden Sie es herunter - XML-Support-Jersey-Example.zip (6 KB)
Referenzen
in Jersey]