दिलचस्प पोस्ट
दूसरे में एक सी स्रोत फ़ाइल भी शामिल है? पीएचपी की जांच अगर फाइल एक छवि है क्या <बूलियन अभिव्यक्ति> && कथन () वैसे ही है (<बूलियन अभिव्यक्ति>) कथन ()? अंगुलुज जैस्मीन यूनिट टेस्ट में वादा करने वाली एक सेवा का मैं कैसे मजाक कर सकता हूं? पृष्ठभूमि कार्य, प्रगति संवाद, अभिविन्यास परिवर्तन – क्या कोई 100% काम समाधान है? इस ऐप के डेवलपर ने फेसबुक ऐप के लिए इस ऐप को ठीक से सेट नहीं किया है? वेब-फ़ार्म साइटों पर web.config पर मशीन को जोड़ने मैं jquery का उपयोग कर पृष्ठ पर एक विशिष्ट स्थान पर कैसे स्क्रॉल कर सकता हूं? PHP 5.3 और सत्र फ़ोल्डर के साथ समस्याएं <fieldset> गलत आकार बदलता है; प्रतीत होता है कि '' न्यूनतम-चौड़ाई: न्यूनतम सामग्री '' एकल चेतावनी त्रुटि को अक्षम करें विंडोज 10 वीं वर्षगांठ संस्करण में टच कीबोर्ड (टैबटीप। एक्सई) दिखाएं लोड डेटा का उपयोग करके MySQL तालिका में आयात करते समय CSV फ़ाइल में स्तंभों को कैसे छोड़ें? एक foreach लूप में आप एक सरणी तत्व कैसे निकाल सकते हैं? मैं एक Windows स्टोर ऐप में वेबवरी सामग्री को कैसे मुद्रित करूं?

जब @ जेसनप्रॉपर्टी प्रॉपर्टी का उपयोग किया जाता है और इसके लिए क्या उपयोग किया जाता है?

यह बीन 'राज्य':

public class State { private boolean isSet; @JsonProperty("isSet") public boolean isSet() { return isSet; } @JsonProperty("isSet") public void setSet(boolean isSet) { this.isSet = isSet; } } 

एजेक्स 'सफलता' कॉलबैक का उपयोग कर तार पर भेजा जाता है:

  success : function(response) { if(response.State.isSet){ alert('success called successfully) } 

क्या एनोटेशन @ जेसनप्रॉपर्टी को यहां आवश्यक है? इसका उपयोग करने का क्या फायदा है? मुझे लगता है कि मैं किसी भी साइड इफेक्ट के बिना इस एनोटेशन को निकाल सकता हूँ

Https://github.com/FasterXML/jackson-annotations/wiki/Jackson-Nnnotations पर इस घोषणा के बारे में पढ़ना मुझे नहीं पता है कि इसका उपयोग करने के लिए कब आवश्यक है?

वेब के समाधान से एकत्रित समाधान "जब @ जेसनप्रॉपर्टी प्रॉपर्टी का उपयोग किया जाता है और इसके लिए क्या उपयोग किया जाता है?"

यहाँ एक अच्छा उदाहरण है मैं इसे चर का नाम बदलने के लिए उपयोग करता हूं क्योंकि JSON .Net पर्यावरण से आ रहा है जहां संपत्तियों को ऊपरी-केस वाले अक्षर से शुरू होता है।

 public class Parameter { @JsonProperty("Name") public String name; @JsonProperty("Value") public String value; } 

यह JSON से / सही तरीके से पार्स करता है:

 "Parameter":{ "Name":"Parameter-Name", "Value":"Parameter-Value" } 

मुझे लगता है कि पुराने क्रामुम्स और स्टाक्समैन दोनों सही हैं लेकिन ये आपके लिए सरल उदाहरण के साथ एक वाक्य का जवाब है।

@ जेसनप्रॉपर्टी (नाम), जैक्सन ऑब्जेक्ट मैपर को एनोटेटेड जावा फ़ील्ड के नाम पर जेसनॉन प्रॉपर्टी नाम मैप करने के लिए कहता है।

 //example of json that is submitted "Car":{ "Type":"Ferrari", } //where it gets mapped public static class Car { @JsonProperty("Type") public String type; } 

इसके लिए अभी इसके मूल्य क्या है … जेसनप्रॉपर्टी भी सामान्य धारावाहिकरण और deserialization के अलावा चर के लिए गेटेटर और सेटर विधियों को निर्दिष्ट करने के लिए उपयोग किया जाता है। उदाहरण के लिए मान लें कि आपके पास ऐसा पेलोड है:

 { "check": true } 

और एक Deserializer वर्ग:

 public class Check { @JsonProperty("check") // It is needed else Jackson will look got getCheck method and will fail private Boolean check; public Boolean isCheck() { return check; } } 

तब इस मामले में जेसनप्रॉपर्टी एनोटेशन की आवश्यकता है। हालांकि यदि आपके पास क्लास में भी एक विधि है

 public class Check { //@JsonProperty("check") Not needed anymore private Boolean check; public Boolean getCheck() { return check; } } 

इस प्रलेख को भी देखें: http://fasterxml.github.io/jackson-annotations/javadoc/2.3.0/com/fasterxml/jackson/annotation/JsonProperty.html

एनोटेशन के बिना, अनुमानित संपत्ति नाम (जेएसओएन से मिलान करने के लिए) "सेट" हो जाएगा, और नहीं – जैसा कि ऐसा लगता है कि "एससेट" है इसका कारण यह है कि जावा बीन्स विनिर्देश के अनुसार, "isXxx" और "setXxx" फार्म की विधियों का अर्थ यह माना जाता है कि प्रबंधन के लिए तार्किक संपत्ति "xxx" है

जैसा कि आप जानते हैं, यह एक वस्तु के सीरियललाइज्ड और डिसेनाइज करना है। मान लें कि कोई वस्तु है:

 public class Parameter { public String _name; public String _value; } 

इस वस्तु का क्रमिकरण है:

 { "_name": "...", "_value": "..." } 

वेरिएबल का नाम सीधे सीरियललाइज करने के लिए उपयोग किया जाता है। यदि आप सिस्टम एपीआई को सिस्टम कार्यान्वयन से निकालने वाले हैं, तो कुछ मामलों में, आपको सीरियलाइजेशन / डेसरियालाइजेशन में वैरिएबल का नाम बदलना होगा। @ जेसनप्रोपेर्टी, सीरियल वस्तु को कैसे सीरियल ऑब्जेक्ट के बारे में बताने के लिए मेटा डेटा है। इसका प्रयोग निम्न करने के लिए किया जाता है:

  • चर का नाम
  • पहुंच (पढ़ें, लिखो)
  • डिफ़ॉल्ट मान
  • आवश्यक / वैकल्पिक

उदाहरण से:

 public class Parameter { @JsonProperty( value="Name", required=true, defaultValue="No name", access= Access.READ_WRITE) public String _name; @JsonProperty( value="Value", required=true, defaultValue="Empty", access= Access.READ_WRITE) public String _value; } 

जेसनप्रॉपर्टी जवाडोक से,

संपत्ति के लिए उपयोग करने के लिए तार्किक संपत्ति का नाम, यानी JSON ऑब्जेक्ट फ़ील्ड का नाम निर्धारित करता है। अगर मान रिक्त स्ट्रिंग है (जो कि डिफ़ॉल्ट है), उस क्षेत्र का नाम प्रयोग करने का प्रयास करेगा जो एनोटेट किया गया है।