के लिए एक मॉड्यूल के साथ ऑब्जेक्ट मैपर कैसे स्थापित करूं? इस उत्तर से (https://stackoverflow.com/a/15605404/650784) मैं अपने डीटीओ में जोडा डेटाटाइम को संभालने के लिए जैक्सन सेट अप करने की कोशिश कर रहा हूं, लेकिन मुझे यह समझने में कठिनाई हो रही है कि ऑब्जेक्टमैपर कोड कहां होना चाहिए जीना। मैंने ऑब्जेक्टमैपर पर विभिन्न लेखों का एक समूह पढ़ा है, लेकिन वे सभी पुराने संस्करणों से निपटने लगते हैं। मैं जो कुछ भी पाता हूं उसे ले सकता हूं और इसे काम करने के लिए हैक कर सकता हूं, लेकिन मैं देखना चाहता था कि स्प्रिंग 3.2.2/जैक्सन 2/जर्सी के साथ ऐसा करने का सही तरीका क्या था। मुझे यह इंगित करना चाहिए कि मैं सिर्फ जोडा टाइम मैपिंग मॉड्यूल जोड़ना चाहता हूं, मैं जैक्सन के किसी अन्य अनुकूलन को नहीं चाहता हूं। मैं एक वसंत नौसिखिया का थोड़ा सा हूँ, इसलिए मुझे माफ़ कर दो अगर यह कुछ सरल और स्पष्ट उत्तर है तो मुझे अभी याद आया।मैं जैक्सन और स्प्रिंग
उत्तर
मैंने वसंत का कभी भी उपयोग नहीं किया, लेकिन मुझे रीस्टेसी फ्रेमवर्क का उपयोग करके एक ही समस्या थी। यह जानकर, मैं आपको खोजने के लिए कुछ जवाब/दिशा देने की कोशिश करूंगा।
अपने किसी एक प्रश्न का उत्तर देने के लिए, जब भी आपको जेसन प्रक्रिया में/सेरियलाइजेशन/deserialization से निपटने के लिए ऑब्जेक्टमैपर "जीना है"। उदाहरण के लिए:
MyObject myObject = new MyObject();
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(myObject);
के रूप में लिंक आपके द्वारा दी गई में बताया, तो आप अपने ObjectMapper करने के लिए एक मॉड्यूल जोड़ना चाहते हैं, तो आप अपने नक्शाकार बनाने के बाद निम्न पंक्ति जोड़ने के लिए:
mapper.registerModule(new AnyModuleYouNeed());
अब , मैं एक स्प्रिंग उपयोगकर्ता नहीं हूं, लेकिन मुझे लगता है कि वसंत जब आप अपनी सीरियलाइजेशन/deserialization प्रक्रिया प्रदान करते हैं तो यह प्रक्रिया स्वचालित होनी चाहिए।
मैं वेब पर इस पाया: http://magicmonster.com/kb/prg/java/spring/webmvc/jackson_custom.html
आपके मामले में, मुझे लगता है कि केवल बिंदु 2 और बिंदु 3 आप के लिए उपयोगी हैं, और क्योंकि आप एक कस्टम serializer है की जरूरत नहीं है, लेकिन आप केवल जरूरत है अपने नक्शाकार करने के लिए एक मॉड्यूल को जोड़ने के लिए, मुझे लगता है कि कस्टम ObjectMapper कि तरह दिखना चाहिए:
@Component
public class CustomObjectMapper extends ObjectMapper {
public CustomObjectMapper() {
registerModule(new AnyModuleYouNeed());
}
}
वेब साइट मैं तुम्हें की ओर इशारा किया, वे वसंत 3.1 उपयोगकर्ताओं के लिए एक Cusom ObjectMapper रजिस्टर करने के लिए एक सुरुचिपूर्ण तरीके के बारे में बात alson : http://magicmonster.com/kb/prg/java/spring/webmvc/mvc_spring_config_namespace.html
यह उपयोगी हो सकता है।
अंत में, मेरी खराब अंग्रेजी क्षमा करें, और अगर आपको आपकी समस्या हल हो गई तो मुझे बताएं।
- 1. जैक्सन स्प्रिंग बूट
- 2. स्प्रिंग @ResponseBody जैक्सन JsonSerializer JodaTime
- 3. जर्सी और जैक्सन - जैक्सन आउटपुट
- 4. स्प्रिंग एमवीसी और जेएसओएन, जैक्सन वर्ग को अपवाद नहीं मिला
- 5. मैं स्प्रिंग 3.1
- 6. कस्टम जैक्सन HttpMessageConverter अब स्प्रिंग 4.2
- 7. जैक्सन बनाम स्प्रिंग हैटोज़ बनाम पॉलिमॉर्फिज्म
- 8. जैक्सन-कोर-एएसएल और जैक्सन-कोर-एलजीपीएल
- 9. मैं कैसे Kotlin + जैक्सन
- 10. जैक्सन
- 11. मैं स्प्रिंग रू और जेपीए
- 12. @JsonTypeInfo और @JsonSubTypes जैक्सन
- 13. वसंत और जैक्सन, @ResponseBody
- 14. मैं जैक्सन को डिफ़ॉल्ट मान
- 15. जैक्सन
- 16. जैक्सन
- 17. जैक्सन
- 18. जैक्सन
- 19. जैक्सन
- 20. जैक्सन
- 21. जैक्सन
- 22. जैक्सन
- 23. जैक्सन
- 24. जैक्सन
- 25. जैक्सन
- 26. जैक्सन
- 27. जैक्सन
- 28. जैक्सन
- 29. जैक्सन
- 30. जैक्सन
बहुत बहुत धन्यवाद, आपने मुझे बहुत समय बचाया। विशेष रूप से दूसरे लिंक के लिए। लेकिन जैक्सन 2 के लिए मैपिंग जैक्सन 2HttpMessageConverter होना चाहिए। – Roman
मेरे पास एक ही प्रश्न कम या कम है लेकिन अभी भी अस्पष्ट नहीं है। क्या मेरा सर्वर शुरू होने पर मॉड्यूल पंजीकृत है? या प्रति अनुरोध? यदि मेरा सीरियलाइजेशन कोड POJO में @XmlElement प्रविष्टियों का केवल एक गुच्छा है, तो क्या इसका मतलब है कि मुझे एक मैपर बनाना है और इसे प्रत्येक pojo में उपयोग करना है जहां मुझे JSONObject समर्थन की आवश्यकता है? मैं वसंत बीटीडब्ल्यू का उपयोग नहीं कर रहा हूँ – Amalgovinus