मैं एक एंटरप्राइज़ प्रोजेक्ट पर काम कर रहा हूं जिसमें एक ईजेबी मॉड्यूल और ग्लासफ़िश v3.1, वेल्ड v1.1 और जर्सी पर चल रही एक वेब प्रोजेक्ट है। ईजेबी में मैंने एक इकाई वर्ग Manufacturer
परिभाषित किया है और एक सत्र मुखौटा ManufacturerFacade
उत्पन्न किया है।जर्सी (आरईएसटी) उप-संसाधन सीडीआई
वेब प्रोजेक्ट में मैं आरईएसटी के माध्यम से Manufacturer
उदाहरणों का खुलासा करना चाहता हूं। ऐसा करने के लिए, मैंने निम्नलिखित संसाधन बनाए:
ManufacturersResource
एक कंटेनर संसाधन है जो डेटाबेस में संग्रहीत सभी निर्माताओं की एक सूची देता है। यह ManufacturerFacade
इंजेक्शन करके और findAll()
विधि को कॉल करके ऐसा करता है। संक्षिप्त कोड:
@RequestScoped
@Path("/manufacturer")
public class ManufacturersResource {
@Inject
private ManufacturerFacade manufacturerFacade;
@GET
@Produces("application/xml")
public List<Manufacturer> getManufacturers() {
return manufacturerFacade.findAll();
}
}
इस संसाधन भी एक उप संसाधन है:
@Path("{id}")
public ManufacturerResource getManufacturer(@PathParam("id") String id) {
return ManufacturerResource.getInstance(id, manufacturerFacade);
}
ManufacturerFacade
लग इस प्रकार है:
public class ManufacturerResource {
@Inject
private ManufacturerFacade manufacturerFacade;
private long id;
private ManufacturerResource(String id) {
this.id = Long.parseLong(id);
}
public static ManufacturerResource getInstance(String id,) {
return new ManufacturerResource(id);
}
@GET
@Produces("application/xml")
public Manufacturer getManufacturer() {
return manufacturerFacade.find(id);
}
}
हम एक अलग वर्ग में हैं हालांकि, और ManufacturerResource
ढांचे और वें द्वारा तत्काल नहीं किया जा रहा है हमारे पास ManufacturerFacade
इंजेक्शन नहीं है।
मैं जानता हूँ कि मैं बस निर्माता के माध्यम से आइटम संसाधन (ManufacturerResource
) के लिए कंटेनर संसाधन (ManufacturersResource
) से मुखौटा पारित लेकिन किसी भी तरह डि रूप में अच्छी तरह उन पर काम या निर्माता एक के माध्यम से गुजर रहा है पाने के लिए यह संभव है सकते हैं यहाँ बिल्कुल ठीक समाधान?
धन्यवाद!
मुझे लगता है कि वर्ग 'निर्माता संसाधन' स्पष्ट रूप से 'निर्माता संसाधन नियंत्रण नियंत्रक' के रूप में नामित किया जाएगा। – stratwine
आप सही हैं। मैं बस अपने पैरों को आरईएसटी में गीला कर रहा हूं इसलिए मैं अभी तक रिफैक्टरिंग नहीं कर रहा हूं, लेकिन मैं करूँगा। सलाह के लिये धन्यवाद! – Laurens