मैं एक स्प्रिंग (4.1.7) वेब एप्लिकेशन लिख रहा हूं जो एक सतत सेवा का खुलासा करता है और मेरी दृढ़ता संस्थाओं का पर्दाफाश करने के बजाय नियंत्रक और क्लाइंट ब्राउज़र के बीच संचार के लिए डीटीओ "संसाधन" ऑब्जेक्ट्स का उपयोग करना चाहता है।वसंत डीटीओ-डीएओ (संसाधन - इकाई) मैपिंग किस अनुप्रयोग परत में है: नियंत्रक या सेवा?
वर्तमान में एप्लिकेशन के पास निम्न परतें हैं:
- देखें (JSP/JSON)
- नियंत्रक (रों)
- डीएओ (
@Service
) - डीएओ (
@Repository
)
मेरा सवाल यह है कि, मुझे डीटीओ संसाधनों में अपनी डीएओ इकाइयों को मैपिंग क्यों करनी चाहिए? मैंने Spring HATEOAS
का उपयोग करके कुछ उदाहरणों पर एक नज़र डाली और Controller
में मैप किए जाने वाले वस्तुओं को दिखाते हुए Resource
दिखाएं। क्या यह करने का सबसे अच्छा तरीका है, या क्या मुझे डीएओ सेवा से संसाधन वापस कर रहे हैं?
मैं (स्वयं और संबंधित संसाधन के लिए) लौटे संसाधन को Link
तत्वों जोड़ना चाहते हैं, लेकिन नहीं देख सकते हैं कि Link
तत्वों अगर यह Controller
का ज्ञान होने और यह @RequestMapping
है बिना Service
में संसाधित का समाधान किया जाएगा। दूसरी ओर, मुझे नहीं पता कि मैपिंग के साथ Controller
को अव्यवस्थित करना अच्छा अभ्यास है या नहीं।
क्या आप सुझाव दे रहे हैं कि मुझे वास्तव में 3 समांतर मॉडल लागू करना चाहिए: डीएओ (उदा। 'ऑर्डरडाओ'), डीटीओ (उदा।' ऑर्डरप्लेस्ड टीओ ') और संसाधन (उदा।' ऑर्डरप्लेस्ड रिसोर्स')? यह नियंत्रक-जागरूक (और इसके विपरीत) सेवा के बारे में मेरी चिंताओं को संबोधित करता है, लेकिन डेटा मॉडल बढ़ने के कारण यह नियंत्रण से बाहर हो सकता है। – Tiksi