दिलचस्प पोस्ट
सेट सटीक और दशमलव अंकों की संख्या के साथ स्ट्रिंग में फ्लोट कन्वर्ट? SQL सर्वर में 1/1/1753 का महत्व क्या है? ddply त्रुटि का अर्थ: 'नाम' विशेषता वेक्टर के समान लंबाई होना चाहिए यह सुनिश्चित करने के लिए कि स्ट्रिंग JSON.NET का उपयोग करते हुए मान्य JSON है X86-64 एबीआई के लिए एक पॉइंटर को 32 बिट ऑफसेट जोड़ते समय कोई चिह्न या शून्य एक्सटेंशन की आवश्यकता है? मैं कैसे जांच सकता हूं कि कोई संख्या एक पूर्ण वर्ग है या नहीं? सी # में डबल प्रेषण? PHP का उपयोग कर फ़ाइल डाउनलोड करने पर मजबूर होना Google नक्शे में दो geocoords के बीच एक मार्ग प्रदर्शित करने के लिए कैसे? सी # गड़बड़ी शून्य के साथ स्ट्रिंग int परिवर्तित? सी ++ में परिवर्तित कन्स्ट्रक्टर क्या है? ये किसके लिये है? सामग्री के बाद कॉल करने के लिए एन्जिलरज इवेंट लाए जाते हैं हैश डिफ़ॉल्ट मान का उपयोग करते समय अजीब, अप्रत्याशित व्यवहार (गायब / बदलते मूल्य) उदा। Hash.new () फ़ाइल का अंत सी ++ में एक गतिविधि से दूसरे को पूर्णांक कैसे पारित किया जाए?

स्प्रिंग फ्रेमवर्क 4.1 का उपयोग करते हुए YAML फाइलों को लोड करने के लिए YamlPropertiesFactoryBean का उपयोग कैसे करें?

मेरे पास एक स्प्रिंग एप्लिकेशन है जो वर्तमान में * .properties फ़ाइलों का उपयोग कर रहा है और मैं इसे YAML फ़ाइलों का उपयोग करना चाहता हूं।

मुझे यमलप्रॉपर्टीज क्लासफाइनर बीन मिला जो कि मुझे क्या करने में सक्षम होना चाहिए।

मेरी समस्या यह है कि मुझे यकीन नहीं है कि मेरे स्प्रिंग एप्लिकेशन में इस क्लास का उपयोग कैसे करें (जो एनोटेशन आधारित कॉन्फ़िगरेशन का उपयोग कर रहा है)। ऐसा प्रतीत होता है कि मैं इसे SetSeFinFactory विधि के साथ PropertySourcesPlaceholderConfigurer में कॉन्फ़िगर करना चाहिए।

पहले मैं @PropertySource का उपयोग कर संपत्ति फ़ाइलों को निम्नानुसार लोड कर रहा था:

@Configuration @PropertySource("classpath:/default.properties") public class PropertiesConfig { @Bean public static PropertySourcesPlaceholderConfigurer placeholderConfigurer() { return new PropertySourcesPlaceholderConfigurer(); } } 

मैं प्रॉपर्टीसोत प्लेसहोल्डर कॉन्फ़िगुरर में यमलप्रॉपर्टीजफिचरबीन को कैसे सक्षम कर सकता हूं ताकि मैं वाईएएमएल फ़ाइलों को सीधे लोड कर सकूं? या ऐसा करने का एक और तरीका है?

धन्यवाद।

मेरा आवेदन एनोटेशन आधारित कॉन्फ़िग का उपयोग कर रहा है और मैं स्प्रिंग फ्रेमवर्क 4.1.4 का उपयोग कर रहा हूं। मुझे कुछ जानकारी मिली है लेकिन यह हमेशा मुझे स्प्रिंग बूट से इशारा करता था, जैसे यह एक

वेब के समाधान से एकत्रित समाधान "स्प्रिंग फ्रेमवर्क 4.1 का उपयोग करते हुए YAML फाइलों को लोड करने के लिए YamlPropertiesFactoryBean का उपयोग कैसे करें?"

एक्सएमएल कॉन्फ़िग के साथ मैं इस निर्माण का उपयोग कर रहा हूं:

 <context:annotation-config/> <bean id="yamlProperties" class="org.springframework.beans.factory.config.YamlPropertiesFactoryBean"> <property name="resources" value="classpath:test.yml"/> </bean> <context:property-placeholder properties-ref="yamlProperties"/> 

बेशक आपको आपके रनटाइम क्लासपाथ पर साँप्यैमल निर्भरता है।

मैं जावा कॉन्फिग पर एक्सएमएल कॉन्फ़िग पसंद करता हूं, लेकिन मैं इसे बदलने में मुश्किल नहीं होना चाहिए।

संपादित करें:
पूर्णता के लिए जावा कॉन्फ़िग

 @Bean public static PropertySourcesPlaceholderConfigurer properties() { PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer = new PropertySourcesPlaceholderConfigurer(); YamlPropertiesFactoryBean yaml = new YamlPropertiesFactoryBean(); yaml.setResources(new ClassPathResource("default.yml")); propertySourcesPlaceholderConfigurer.setProperties(yaml.getObject()); return propertySourcesPlaceholderConfigurer; } 

वसंत में .yml फ़ाइल को पढ़ने के लिए आप अगले दृष्टिकोण का उपयोग कर सकते हैं।

उदाहरण के लिए आपके पास यह .yml फ़ाइल है:

 section1: key1: "value1" key2: "value2" section2: key1: "value1" key2: "value2" 

फिर 2 जावा POJO को परिभाषित करें:

 @Configuration @EnableConfigurationProperties @ConfigurationProperties(prefix = "section1") public class MyCustomSection1 { private String key1; private String key2; // define setters and getters. } @Configuration @EnableConfigurationProperties @ConfigurationProperties(prefix = "section2") public class MyCustomSection1 { private String key1; private String key2; // define setters and getters. } 

अब आप इन बीन्स को अपने घटक में ले सकते हैं उदाहरण के लिए:

 @Component public class MyPropertiesAggregator { @Autowired private MyCustomSection1 section; } 

यदि आप स्प्रिंग बूट का उपयोग कर रहे हैं तो सब कुछ स्वतः स्कैन और तत्काल होगा:

 @SpringBootApplication public class MainBootApplication { public static void main(String[] args) { new SpringApplicationBuilder() .sources(MainBootApplication.class) .bannerMode(OFF) .run(args); } } 

अगर आप ज्यूनेट का प्रयोग कर रहे हैं तो YAML फ़ाइल लोड करने के लिए एक बुनियादी परीक्षण सेटअप है:

 @RunWith(SpringJUnit4ClassRunner.class) @SpringApplicationConfiguration(MainBootApplication.class) public class MyJUnitTests { ... } 

यदि आप TestNG का उपयोग कर रहे हैं तो परीक्षण कॉन्फ़िगरेशन का एक नमूना है:

 @SpringApplicationConfiguration(MainBootApplication.class) public abstract class BaseITTest extends AbstractTestNGSpringContextTests { .... }