मैं सिर्फ प्रत्येक मशीन के लिए अलग स्प्रिंग एक्सएमएल विन्यास फाइल का उपयोग करें और सुनिश्चित करें कि सभी विन्यास डेटा के टुकड़े कि मशीनों के बीच भिन्न हो सेम है कि उन स्प्रिंग विन्यास फाइल से लोड द्वारा संदर्भित है बनाते हैं।
उदाहरण के लिए, मेरे पास एक वेबपैप है जो किसी अन्य ऐप के जावा आरएमआई इंटरफेस से जुड़ता है। मेरे ऐप को इस अन्य ऐप के आरएमआई इंटरफेस का पता एक बीन के माध्यम से मिलता है जो स्प्रिंग एक्सएमएल कॉन्फ़िगरेशन फ़ाइल में कॉन्फ़िगर किया गया है। मेरे ऐप और अन्य ऐप दोनों में देव, परीक्षण और उत्पादन उदाहरण हैं, इसलिए मेरे पास मेरे ऐप के लिए तीन कॉन्फ़िगरेशन फ़ाइलें हैं - जो कि उत्पादन उदाहरण के लिए उपयुक्त कॉन्फ़िगरेशन से मेल खाती है, एक परीक्षण उदाहरण के लिए, और देव के लिए एक उदाहरण।
फिर, केवल एक चीज जिसे मुझे सीधे रखने की आवश्यकता है वह है कि कौन सी कॉन्फ़िगरेशन फ़ाइल मशीन पर तैनात की जाती है। अब तक, मुझे एंट कार्यों को बनाने की रणनीति के साथ कोई समस्या नहीं है जो मेरी डब्ल्यूएआर फ़ाइल उत्पन्न करने से पहले सही कॉन्फ़िगरेशन फ़ाइल को कॉपी करने में संभालती है; इस प्रकार, उपर्युक्त उदाहरण में, मेरे पास तीन चींटी कार्य हैं, जो उत्पादन WAR उत्पन्न करता है, जो देव WAR उत्पन्न करता है, और वह परीक्षण WAR उत्पन्न करता है। सभी तीन कार्य सही कॉन्फ़िगरेशन फ़ाइल को सही जगह पर कॉपी करने में संभालते हैं, और उसके बाद उसी चरण को कॉल करते हैं, जो ऐप को संकलित कर रहा है और WAR बना रहा है।
आशा यह कुछ समझ में आता है ...
समझ में आता है, और यह मैं जो कर रहा हूं उससे बहुत ही समान है। मंच के लिए एक चींटी कार्य और उत्पादन के लिए एक, और स्थानीय विकास के लिए केवल डिफ़ॉल्ट का उपयोग करना। लेकिन दर्द 3 अलग-अलग एप्लिकेशन कॉन्टेक्स्ट्स को मुख्य करने से उत्पन्न होता है जिसमें लगभग समान सामग्री होती है .. – stian
स्प्रिंग एप्लिकेशन कॉन्टेक्स्ट सबक्लास के अधिकांश (सभी?) एक्सएमएल कॉन्फ़िगरेशन फ़ाइलों के लिए स्थानों की एक सरणी लेते हैं, ताकि आपके पास निरंतर जानकारी के लिए एक फ़ाइल हो और अलग हो परिवर्तनीय जानकारी के लिए फ़ाइलें, और प्रत्येक संदर्भ के निर्माता में एक से अधिक पास। क्या यह मदद करता है? – delfuego