दो जावा एक्सटेंशन यह अंत करने के लिए संगीत कार्यक्रम में शानदार काम करते हैं:
- JAX-RS (संदर्भ कार्यान्वयन जर्सी)
- JAXB (संदर्भ कार्यान्वयन मेट्रो)
दोनों Glassfish जावा ईई के साथ शामिल हैं 5 और 6 संदर्भ कार्यान्वयन।
छोटा है, JAX-रुपये में आप @GET
, @POST
, @PUT
या @DELETE
एनोटेशन में से एक को जोड़कर एक वेब सेवा के रूप में एक सादे प्रणाली की घोषणा कर सकते हैं। जेएक्स-आरएस में पथ और यूआरएल क्वेरी पैरामीटर के स्वचालित पार्सिंग के लिए एनोटेशन भी हैं, और ज्यादातर मामलों में उचित प्रतिक्रिया ऑब्जेक्ट्स बनाने का ख्याल रखता है।
JAXB स्वचालित रूप से @XmlRootElement
, @XmlElement
, @XmlID
, आदि जोड़ने जब JAX-रुपये के साथ संयुक्त, वास्ते और unmarshalling पारदर्शी रूप से किया जाता है के द्वारा करने के लिए और एक्सएमएल से सादे वस्तुओं (POJOs) अनुवाद करता है।
उदाहरण के लिए:
// POJO with JAXB annotations
@XmlRootElement(name = "sensor")
public class MyObject {
@XmlID
@XmlElement
private String id;
@XmlAttribute
private String name;
@XmlElement(name = "sensor-value")
private Integer value;
@XmlTransient // don't translate to XML
private Double computedValue;
// ...getters and setters
}
// POJO with REST interface
@Path("/mywebservice")
public class MyWebService {
@EJB
MySensorController controller;
@GET
@Produces("application/xml")
public MyObject getCurrentSensorValue(@QueryParam("ID") String id) {
// automatic unmarshalling from MyObject to XML
return controller.getSensorValue(id);
}
}
जिसके परिणामस्वरूप एक्सएमएल कुछ इस तरह दिखेगा:
<sensor name="foo">
<id>123</id>
<sensor-value>42</sensor-value>
</sensor>
स्रोत
2011-05-31 13:57:51
+1 - एक पूर्ण उदाहरण के लिए देखें: http://bdoughan.blogspot.com/2010/08/creating-restful-web-service-part-45.html –