बस इसे दूसरे दिन खेलना है, और इसे कुछ घंटों तक लड़ा, @Category
विधियों और अन्य लोगों की कोशिश कर रहा है, जब तक मुझे यह नहीं मिला: आप Splittable
प्रकार की संपत्ति बना सकते हैं, जो अंतर्निहित परिवहन प्रकार का प्रतिनिधित्व करता है बूलियन/स्ट्रिंग्स/सूचियों/मानचित्रों के लिए कुछ एन्कोडिंग। मेरे मामले में, मुझे कुछ लिफाफा प्रकार पता है जो डिजाइन समय पर तार पर जाता है, और कुछ अन्य संपत्ति के आधार पर, कुछ अन्य क्षेत्र अन्य ऑटोबेन्स की संख्या हो सकता है।
आपको संकलन समय पर अन्य बीन के प्रकार को जानने की भी आवश्यकता नहीं है, तो आप Splittable
के तरीकों का उपयोग करके मूल्य प्राप्त कर सकते हैं, लेकिन अगर ऑटोबैन्स का उपयोग कर रहे हैं, तो लपेटे गए डेटा को परिभाषित करना अच्छा होता है।
interface Envelope {
String getStatus();
String getDataType();
Splittable getData();
}
-
JSON पर भेजा (यदि आप प्राप्त करने के साथ ही डाटा भेजने Setters वांछित हो सकता है एक `Splittable में एक सेम एन्कोडिंग एक लिफाफे में इसे भेजने के लिए इसे डीकोड से भी आसान है) तार (शायद AutoBeanCodex
का प्रयोग करके) डीकोड Envelope
प्रकार में, और किस प्रकार getData()
विधि से बाहर आ जाना चाहिए, कुछ इस तरह फोन बाहर
SpecificNestedBean bean = AutoBeanCodex.decode(factory,
SpecificNestedBean.class,
env.getData()).as();
नेस्टेड वस्तु प्राप्त करने के लिए के बाद आप तय कर लिया हैप्रकार और नेस्टेड प्रकार (ऊपर factory
में) को भी AutoBeanFactory
प्रकार की आवश्यकता नहीं है। यह आपको जेनेरिक ट्रांसपोर्ट इंस्टेंस से लिफाफे के पढ़ने/लिखने के बारे में बता सकता है, और डेटा के मॉडल (और नेस्टेड मॉडल) को डीकोड करने के लिए प्रत्येक dataType
स्ट्रिंग प्रॉपर्टी के लिए एक विशिष्ट फैक्ट्री का उपयोग कर सकता है।
स्रोत
2012-02-10 21:40:05