विकल्पों को देखने से, ऐसा लगता है कि आप केवल तभी दिखाए जाने के लिए गुणों की व्याख्या कर सकते हैं जब दिए गए View
ObjectMapper
. को पास कर दिया जाता है क्रमबद्धता के लिए उपयोग किया जाता है। इस प्रकार आप कक्षा को संपादित कर सकते हैं:
public static class FooReference {
public DBRef<Foo> foo;
@JsonView(Views.WebView.class)
public Foo getFoo() {
return foo.fetch();
}
}
और प्रदान करें:
class Views {
static class WebView { }
}
और फिर सही दृश्य के साथ कॉन्फ़िगरेशन बनाने के बाद क्रमबद्ध करें:
SerializationConfig conf = objectMapper.getSerializationConfig().withView(Views.WebView.class);
objectMapper.setSerializationConfig(conf);
जो तब इसे क्रमबद्ध करेगा। मोंगोडीबी रैपर के साथ क्रमबद्ध करते समय दृश्य निर्दिष्ट नहीं करने का अर्थ यह होगा कि विधि को अनदेखा कर दिया जाएगा। JsonView एनोटेशन के बिना गुण डिफ़ॉल्ट रूप से क्रमबद्ध होते हैं, एक ऐसा व्यवहार जिसे आप निर्दिष्ट करके बदल सकते हैं:
objectMapper.configure(SerializationConfig.Feature.DEFAULT_VIEW_INCLUSION, false);
अधिक जानकारी जैक्सन विकी पर उपलब्ध है।
अभी भी अन्य विकल्प हैं, यह भी पता चला है:जैक्सन मिक्सइन हैं जो आपको कक्षा को संशोधित किए बिना कक्षा के कुछ हिस्सों के क्रमबद्ध व्यवहार को ओवरराइड (डी) करने देंगे, और जैक्सन 2.0 (हाल ही में रिलीज) के रूप में फ़िल्टर हैं , भी।