के साथ जावा बीन्स उत्पन्न करता है क्या क्लोजर में वेक्टर दिए जाने वाले जावा बीन्स आसानी से उत्पन्न करने का कोई तरीका है? उदाहरण के लिए इस तरह एक वेक्टर दिया:क्लोजर
[
String :key1
Integer :key2
]
मैं इसे करना चाहते हैं इस तरह कोड उत्पन्न करने के लिए:
public class NotSureWhatTheTypeWouldBeHere {
private String key1;
private Integer key2;
public NotSureWhatTheTypeWouldBeHere() {}
public NotSureWhatTheTypeWouldBeHere(String key1, Integer key2) {
this.key1 = key1;
this.key2 = key2;
}
public void setKey1(String key1) {
this.key1 = key1;
}
public String getKey1() {
return this.key1;
}
public void setKey2(Integer key2) {
this.key2 = key2;
}
public String getKey2() {
return this.key2;
}
// and equals,hashCode, toString, etc.
}
संदर्भ के लिए, मैं एक ऐप्लिकेशन है जो जावा में लिखा है लिखने के लिए चाहते हैं, लेकिन क्लोजर में लिखी लाइब्रेरी में कॉल करता है। तो इसका मतलब है कि वापसी मूल्य जावा बीन्स होना चाहिए (मुझे पता है कि उन्हें होना जरूरी नहीं है, लेकिन मैं उन्हें बनना चाहता हूं)। एक तरीका जावा में मॉडल को परिभाषित करना होगा और फिर क्लोजर कोड में मॉडल को पॉप्युलेट करने के लिए क्लोजर के सामान्य जावा इंटरऑप का उपयोग करना होगा, लेकिन मुझे एक संक्षिप्त क्लोजर वेक्टर (या मानचित्र) का विचार (वर्बोज़) जावा बीन में विस्तारित करना पसंद है।
+1। मैं स्ट्रिंग्स को चाबियों के रूप में उपयोग करने का सुझाव दूंगा: ये काम क्लोजर साइड पर कीवर्ड के साथ-साथ काम करते हैं लेकिन जावा एपीआई उपयोगकर्ताओं के लिए बहुत आसान है .... – mikera
यह शायद सही जवाब है, लेकिन यह इस बात को याद करता है कि मैं विशेष रूप से जावा पक्ष पर एक नक्शा नहीं चाहते हैं। मेरे पास जावा कोड का एक विशाल स्वार्थ है जो सेवा, दाओ और मॉडल ऑब्जेक्ट्स का एक गुच्छा है। मैं उम्मीद कर रहा था कि मैं क्लोजर में फिर से लिख सकता हूं कि मॉडल ऑब्जेक्ट्स गतिशील रूप से जेनरेट किए जा सकते हैं (इस प्रकार कोड आकार को बड़े पैमाने पर कम कर सकते हैं)। और एक ग्राहक परिप्रेक्ष्य से, कोड मूल जावा कोड से अलग नहीं है। – Kevin
मेरा सुझाव है कि आप क्लाइंट जावा कोड के नमूने से शुरू करें, जैसा कि आप चाहते हैं, और फिर एक सामान्य इंटरफ़ेस ढूंढने का प्रयास करें जो आपको आवश्यक सभी मामलों का वर्णन कर सकता है और आप क्लोजर से 'पुनः प्राप्त कर सकते हैं'। समस्या वास्तव में जावा पक्ष के साथ एक आम अनुबंध के बिना फ्लाई पर जावा बीन्स उत्पन्न करने की कोशिश कर रही है। – skuro