spring - How to define @Value as optional -


मेरे पास स्प्रिंग बीन में निम्नलिखित हैं:

  @Value ("$ {myValue } ") निजी स्ट्रिंग मान;  

मान सही ढंग से इंजेक्शन है। हालांकि, वैरिएबल को वैकल्पिक होने की आवश्यकता है, इसे कमांड लाइन पैरामीटर के रूप में पारित किया जाता है (जो फिर SimpleCommandLinePropertySource का उपयोग करके वसंत संदर्भ में जोड़ा जाता है), और यह तर्क हमेशा मौजूद नहीं होगा।

मैंने एक डिफ़ॉल्ट मान प्रदान करने के लिए निम्न दोनों प्रयास किए हैं:

  @Value ("$ {myValue:}") @ वेल ("$ {myValue: DEFAULT}" )  

लेकिन प्रत्येक मामले में, बृहदान्त्र के बाद डिफ़ॉल्ट तर्क तब भी इंजेक्शन होता है जब वास्तविक मान होता है - यह प्रकट होता है कि क्या स्प्रिंग को अंतःक्षेपित करना चाहिए।

क्या है निर्दिष्ट करने का सही तरीका @ वेल की आवश्यकता नहीं है?

धन्यवाद

यह निर्दिष्ट करने का सही तरीका क्या है कि @ वैल्यू की आवश्यकता नहीं है?

इस धारणा पर कार्य करना कि 'आवश्यक नहीं' से आपका मतलब है null तब ...

आपने सही तरीके से नोट किया है कि आप : के दाईं ओर एक डिफ़ॉल्ट मान प्रदान कर सकते हैं चरित्र। आपका उदाहरण @Value था ("$ {myValue: DEFAULT}")

आप सामान्य मान के रूप में सादे स्ट्रिंग तक सीमित नहीं हैं। आप अभिव्यक्ति का उपयोग कर सकते हैं, और null वापस करने के लिए एक सरल SPEL अभिव्यक्ति है:

  @Value ("$ {myValue: # {null}}")  

Comments

Popular posts from this blog

c# - Highlight all words containing a letter in a richtextbox -

Admob interstitials not clickable on Nexus 5 (Android 4.4.2) -

java - MigLayout - selective component fill -