2009-10-07 11 views
6

मैं अपने स्प्रिंग एक्सएमएल संदर्भ में एक सेम वर्गों के प्रकार सूची का एक गुण है कि परिभाषित करना चाहते हैं की एक सूची प्राप्त करता है: IE List<Class<?>> classesवसंत: एक सेम है कि कक्षा

मुझे लगता है कि सेम के एक नंबर कैसे भेजूं कक्षाएं, java.lang.String और java.lang.Integer कहते हैं?

सूची को पुन: प्रयोज्य करने की आवश्यकता नहीं है, यानी मैं इसे किसी अन्य बीन में संदर्भित नहीं करूँगा।

उत्तर

15
स्प्रिंग, सरलतम संभावना आमतौर पर काम करता है के साथ

.....

<property name="classes"> 
     <list> 
     <value>java.lang.String</value> 
     <value>java.lang.Integer</value> 
     </list> 
    </property> 
+1

क्यों इस काम करता है: http://static.springsource.org/ वसंत/दस्तावेज़/2.5.x/संदर्भ/सत्यापन.html # सेम-बीन्स-रूपांतरण –

+0

स्काफमैन सही है। आपको मैट बी के लिंक का सारांश देने के लिए, स्प्रिंगफ्रेमवर्क यह निर्धारित करने के लिए संपत्ति संपादक और आत्मनिरीक्षण का उपयोग करता है कि आप किस प्रकार की संपत्ति सेट कर रहे हैं और तदनुसार दिए गए मानों को रूपांतरित करें। –

1
<property name="classes"> 
     <list> 
      <bean class="java.lang.Class" factory-method="forName"> 
       <constructor-arg value="java.lang.String"/> 
      </bean> 
     </list> 
</property> 

कुछ इस तरह ...

संबंधित मुद्दे