स्प्रिंग डेटा आरईएसटी डोमेन ऑब्जेक्ट्स और रिपोजिटरी एब्स्ट्रैक्शन के शीर्ष पर बनाया गया है। इसलिए इसे स्टोर विशिष्ट कार्यान्वयन के साथ काम करने देना इसके दायरे से बाहर है। मैं मान रहा हूं कि आपका मुख्य लक्ष्य आपके डोमेन इंस्टेंस के लिए एक पैच अनुरोध लागू करना है और वह $addToSet
इसे हासिल करने का एक साधन मात्र है।
स्प्रिंग डेटा REST के संस्करण 2.2 M1 के बाद से हम JSON Patch मीडिया प्रकार का समर्थन करते हैं पैच अनुरोध पर। तो आप निम्न दस्तावेज़ को सर्वर पर भेज सकते हैं:
[{ "op": "add", "path": "/a/b/c", "value": [ "foo", "bar" ] }]
मान लें कि c
वह सरणी है जिसे आप हेरफेर करने की कोशिश कर रहे हैं, यह जोड़ देगा foo
और bar
इसके लिए।
दूसरा - अधिक कट्टरपंथी विकल्प वास्तव में मैन्युअल रूप से कार्यान्वित नियंत्रक को तैनात करना और इसे यूआरआई स्पेस में सही जगह पर लगाना है ताकि मैन्युअल रूप से रिपोजिटरी के साथ इंटरैक्ट किया जा सके।