में तारों के खाली जावा सेट को कैसे प्रबंधित करूं IAWS DynamoDB तालिका में स्ट्रिंग्स की सरणी को स्टोर करने का प्रयास कर रहा हूं। अधिकांश भाग के लिए यह सरणी कम से कम एक स्ट्रिंग के साथ आबादी होगी। हालांकि ऐसा मामला है जहां सरणी खाली हो सकती है।मैं AWS DynamoDB
मैंने जावा लैम्ब्डा फ़ंक्शन में एक डायनेमोडीबी मॉडल बनाया है जिसमें तारों का एक सेट इसके गुणों में से एक है। यदि मैं डायनामो डीबी मॉडल को सहेजने का प्रयास करता हूं तो तारों का सेट खाली होता है तो यह मुझे एक त्रुटि देता है कि मैं डायनामो डीबी में एक खाली सेट स्टोर नहीं कर सकता।
तो मेरा सवाल यह है कि डायनेमो डीबी में इसे सहेजने/अपडेट करने से पहले मेरे मॉडल से खाली होने पर उस सेट संपत्ति को हटाने में कैसे संभाल लेंगे?
यहां मॉडल का एक उदाहरण दिया गया है।
@DynamoDBTable(tableName = "group")
public class Group {
private String _id;
private Set<String> users;
@Null
@DynamoDBHashKey
@DynamoDBAutoGeneratedKey
public String getId() {
return _id;
}
public void setId(final String id) {
_id = id;
}
@DynamoDBAttribute
public Set<String> getUsers(){
return users;
}
public void setUsers(final Set<String> users) {
this.users = users;
}
public void addUser(String userId) {
if(this.users == null){
this.setUsers(new HashSet<String>(Arrays.asList(userId)));
}else{
this.getUsers().add(userId);
}
}
}
पहली बार जब मैं एक समूह बनाउंगा। इसमें कोई उपयोगकर्ता नहीं हो सकता है, या इसमें एक या अधिक उपयोगकर्ता हो सकते हैं।
एडब्ल्यूएस तकनीकी समर्थन के साथ इसके बारे में और बातचीत के आधार पर यह स्वीकार किया गया है कि स्वीकार्य अभ्यास वास्तव में मौजूदा आइटम को हटाना है और उसी प्राथमिक इंडेक्स के साथ एक नई वस्तु को फिर से निकालना है जो संपत्ति को छोड़कर छोड़ देगा। मैंने कोशिश की और इसके साथ कोई भाग्य नहीं था। –
इसका मतलब है कि हम इस तरह की स्थिति के लिए किसी भी जावा POJO कक्षा का उपयोग नहीं कर सकते हैं? –