को बाहर मैं एक उपयोग के मामले में यह बहिष्कार जानकारी के साथ JSONView एनोटेशन उपयोग करने के लिए अधिक उपयुक्त लग रहा है, जहां है, उदाहरण के लिए (1.9.2) अब तक, मुझे आश्चर्य है कि जैक्सन में यह हासिल करने के लिए एक आसान कामकाज है।JSONView एनोटेशन/विशेषता
उपयोग मामला:
- रिपोर्ट 1: यह दृश्य
id, name, info1, info2, info3, info4
होना चाहिए विशेषताओं - रिपोर्ट 2: यह दृश्य
id, name, info1, info2, info4
होना चाहिए विशेषताओं - रिपोर्ट [3 ..] कई अन्य विचारों संभव हो रहे हैं कहो
private int id; private String name; private String info1; private String info2; //ignore if view=report2 @JsonView(ReportViews.Report2.class , include=false) private String info3; private String info4;
मेरा उपयोग केस विचारों के आधार पर विशेषताओं को छोड़ रहा है (या रिपोर्ट-आईडी कहते हैं)। JSONView दृष्टिकोण के साथ मुझे इसे निकालने के लिए Report2 को छोड़कर info3 विशेषता में सभी दृश्य जोड़ने की आवश्यकता है। अच्छी तरह फिट नहीं है।
इस परिदृश्य में सही दृष्टिकोण क्या होना चाहिए? बहिष्कार/समावेशन को छोड़कर अनुकूलित JSONView सही समाधान होगा यदि कुछ पहले से ही उपलब्ध नहीं है।
धन्यवाद, सही बहिष्कार सीधे संभव नहीं है, मैं अंत में विस्तारित 'Jackson' functionlity अपने कस्टम एनोटेशन समर्थन करने के लिए, नमूना उपयोग के मामले में से एक की तरह है:' @ReportView (perms = {Permission.ShowX, अनुमति। ShowY, ..}, anyPerm = false | true, conditions = "reflectiveConditionMethod", शामिल = false | true) ' – harsh