मेरे पास मेरे स्प्रिंग बूट ऐप के लिए एक एकल application.yml
कॉन्फ़िगरेशन फ़ाइल है जो दो प्रोफाइल को परिभाषित करती है (जैसा कि documentation में वर्णित है)।क्या मैं स्प्रिंग बूट कॉन्फ़िगरेशन फ़ाइलों के भीतर सिस्टम प्रॉपर्टी को परिभाषित कर सकता हूं?
जब उत्पादन प्रोफ़ाइल सक्षम है, तो मैं http.maxConnections
सिस्टम प्रॉपर्टी को कस्टम मान पर सेट करना चाहता हूं, उदा।
spring:
profiles:
active: dev
---
spring:
profiles: dev
---
spring:
profiles: production
http:
maxConnections: 15
लेकिन यह वास्तव में सिस्टम स्तर की संपत्ति सेट नहीं करता है; ऐसा लगता है कि सिर्फ एक आवेदन-स्तर की संपत्ति बनाएं। मैं दोनों http://locahost:8080/env के माध्यम से इस की पुष्टि कर लें और एक JMX कंसोल जब
java -jar -Dspring.profiles.active=production myapp.jar
द्वारा शुरू की तुलना बनाम
java -Dhttp.maxConnections=15 myapp.jar
मुझे लगता है मैं एक सेम है कि "उत्पादन" प्रोफ़ाइल है कि प्रोग्राम के रूप में System.setProperty
कॉल पर @Conditional
है बना सकते हैं मेरे application.yml
-निर्धारित संपत्ति के आधार पर, लेकिन अकेले कॉन्फ़िगरेशन फ़ाइलों के माध्यम से एक आसान तरीका है?
समस्या है, तो आप अन्यथा आप इसे संशोधित करने और अपने अनुप्रयोग – Palcente
@Palcente हाँ, कुछ मतलब रिबूट सकता है आप इस बदलना चाहते हैं पुनर्वितरित करने की जरूरत है,। मेरा मानना है कि आप 'application-production.yml' में गुण डाल सकते हैं जिसका उपयोग' उत्पादन' प्रोफ़ाइल में किया जाएगा। – TheKojuEffect