जवाबों:
यह देखने के बिंदु पर निर्भर करता है (सज़ा का इरादा)।
बड़े वास्तु चित्र में, आपका अपना JSF कोड V है :
एम - व्यापार डोमेन / सेवा परत (जैसे EJB / JPA / DAO)
V - आपका JSF कोड
C - FacesServlet
डेवलपर चित्र में, वास्तु V नीचे के रूप में विभाजित है:
एम - एंटिटी
वी - फेसलेट्स / जेएसपी पृष्ठ
सी - प्रबंधित बीन
छोटे ग्राहक चित्र में, डेवलपर V नीचे के रूप में विभक्त है:
M - JSF घटक ट्री
V - रेंडर किया गया HTML आउटपुट
C - क्लाइंट (वेबब्रोसर)
अभी तक छोटे जावास्क्रिप्ट चित्र में, क्लाइंट V नीचे के रूप में विभाजित है:
M - HTML DOM ट्री
V - विज़ुअल प्रस्तुति
C - इवेंट श्रोता फ़ंक्शंस (एंड्यूसर इंटरैक्शन और अजाक्स)
तो यह मूल रूप से एक M (M (M (MVC) C) C) C;) है
ध्यान दें कि कुछ शुरुआत और यहां तक कि कुछ-हर बुनियादी ट्यूटोरियल ट्यूटोरियल / कॉपी / प्रबंधित बीन में इकाई के गुणों को समतल करते हैं, जो प्रभावी रूप से नियंत्रक को एक मॉडल बना देगा। यह कहने की जरूरत नहीं है कि यह खराब डिजाइन है (यानी साफ एमवीसी डिजाइन नहीं)।
निम्नलिखित उत्तरों में कोड स्निपेट सही MVC दृष्टिकोण का वर्णन करता है:
जावा ईई 8 में , जेपीएफ के लिए निश्चित परिभाषा वाली पुस्तक में , अध्याय 8 "बैकिंग बीन्स", पृष्ठ 276 में, नीचे दिए गए वेन आरेख का उपयोग जेएसएफ डेवलपर के लिए प्रासंगिक संदर्भ में एमवीसी प्रतिमान में बैकिंग बीन की स्थिति का वर्णन करने के लिए किया गया है। । कॉपीराइट अस्वीकरण: पुस्तक मेरे द्वारा लिखी गई है और चित्र मेरे द्वारा बनाया गया है।
<h:inputText value="#{register.username}">
इसके बजाय उपयोग करना <h:inputText value="#{register.user.name}">
।
एम ओडेल आपका होगाManagedBean
V iew होगा jsp
, XHTML
(अच्छी तरह से आप यहाँ विभिन्न विचारों को समायोजित कर सकते हैं)
सी ontroller होगाFacesServlet
अद्यतन, आशा है कि यह चित्र और अधिक मदद करता है
FacesServlet
मैं इसे विस्तार नहीं कर सकता से एक नियंत्रक है। मेरे अपने नियंत्रक नहीं हो सकते ... मैं शेरविन के साथ सहमत हूँ कि प्रबंधित बीन्स नियंत्रक है। शेरविन, अपने स्वयं के वैकल्पिक उत्तर पोस्ट करने के बारे में कैसे?
FacesServlet
जो नियंत्रित कर रहा है।
चेहरे सर्वलेट चेहरे जीवन चक्र का प्रबंधन करता है तो इस अर्थ में कि यह आपके अपने कोड के साथ संयुक्त नियंत्रक है जिसे प्रत्येक जीवन चक्र चरण के दौरान कहा जा सकता है
जावा सर्वर फेस एक MVC वेब फ्रेमवर्क है जहां MVC घटक निम्नानुसार हैं,
मॉडल - यह प्रबंधित मैन क्लास है जो @ManagedBean के साथ एनोटेट किया गया है, जिसमें डेटा और संबंधित गेटर्स और बसने के गुण हैं। प्रबंधित बीन वर्ग में व्यावसायिक तर्क भी हो सकते हैं। इनको बैकिंग बीन्स के रूप में भी जाना जाता है, जिसमें अनुरोध, सत्र, आवेदन जैसे विभिन्न दायरे हो सकते हैं।
देखें - ग्राहक को .xhtml फाइलों को दिखाया गया यूजर इंटरफेस। यह प्रबंधित बीन्स से डेटा प्राप्त करता है और इसे प्रतिक्रिया के रूप में प्रस्तुत किया जाता है।
नियंत्रक - javax.servlet.webapp.FacesServlet केंद्रीयकृत नियंत्रक वर्ग है जो मूल रूप से एक सर्वलेट है। जेएसएफ में आने वाला कोई भी अनुरोध सबसे पहले FacesServlet कंट्रोलर के पास जाता है। जेएसपी के विपरीत जिसमें हम अपने स्वयं के नियंत्रक वर्ग लिखते हैं, जेएसएफ में नियंत्रक सर्वलेट फ्रेमवर्क का एक निश्चित हिस्सा है और हम इसे नहीं लिखते हैं।
MVC प्रवाह-