2012-01-11 16 views
5

के साथ जावा ईई आर्किटेक्चर क्या जावा के साथ जावा ईई आर्किटेक्चर को पुन: पेश करना संभव है? जावा ईई द्वारा मेरा मतलब है कि ये 4 परतें: देखें, नियंत्रक, सेवा, मॉडल।प्ले फ्रेमवर्क

मुझे पता है कि एमवीसी पर आधारित एक बेहतर आर्किटेक्चर का उपयोग करें, और मुझे यह पसंद है, लेकिन मुझे एक विशिष्ट प्रोजेक्ट के लिए जावा ईई आर्किटेक्चर का उपयोग करना होगा और मैं Play का उपयोग करना चाहता हूं क्योंकि यह मेरे द्वारा सबसे अच्छा जावा फ्रेमवर्क है दृष्टिकोण।

उत्तर

1

आप खेलने के साथ वसंत को एकीकृत करने के लिए वसंत मॉड्यूल का उपयोग और सेवा/मॉडल परतों के लिए उपयोग कर सकते हैं: http://www.playframework.org/modules/spring

या आप बस नियंत्रकों और मॉडल के बीच एक सेवा परत बनाने और अपने आप से कुछ पैटर्न का उपयोग कर सकते हैं (सिंगलटन, कारखाना, ...) इन सेवाओं के साथ तार नियंत्रकों के लिए

4

मेरी वर्तमान परियोजना में हम एक पारंपरिक जावा ईई ऐप का उपयोग प्ले एप्लिकेशन के बैकएंड के रूप में करते हैं। सभी आवेदन तर्क स्टेटलेस ईजेबी में लागू किए गए हैं जिन्हें आरएमआई पर पहुंचाया जाता है।

प्ले नियंत्रक हमारे ईजेबी के लिए रिमोट इंटरफेस के लिए स्टब्स प्राप्त करने के लिए दूरस्थ जेएनडीआई लुकअप का उपयोग करते हैं। मॉडल कक्षाओं के साथ-साथ रिमोट इंटरफेस के लिए कक्षा परिभाषा Play अनुप्रयोग और जावा ईई एप्लिकेशन के बीच साझा किया जाता है जो हमारे एप्लिकेशन सर्वर (ग्लासफ़िश) पर चल रहा है।

जावा ईई एप्लिकेशन मेवेन द्वारा बनाया गया है जो हमारे केंद्रीय नेक्सस सर्वर पर ejb-client.jar को तैनात करता है जो Play रनटाइम के लिए भी सुलभ है (एक अनुकूलित आईवी सेटअप फ़ाइल बनाकर सक्षम)।

इस समाधान ने अभी तक हमारे लिए ठीक काम किया है। चीजों को तेज़ करने और ऐप को स्केलेबल बनाने के लिए हम Play's asynchronous job और memcache समर्थन का उपयोग करते हैं।

मीठा :-)

+1

आप कैसे आप JNDI लुकअप पर कुछ जानकारी साझा कर सकते हैं? मैं Play 2.1 एप्लिकेशन से ग्लासफ़िश पर तैनात ईजेबी को देखने की भी कोशिश कर रहा हूं लेकिन जैसा कि आप इस प्रश्न में देख सकते हैं कि अब तक मुझे बहुत भाग्य नहीं मिला है ... – Christina

संबंधित मुद्दे