6

これが私の言いたいことです。次のSpring XMLファイルを参照してください。

<bean id = 'a' class="A">
   <property name="mapProperty">
       <map>
          <entry key="key1"><value>value1</value></entry>
       </map>
   </property>
</bean>

そして私のクラスは次のようになります:

class A {
   HashMap mapProperty

}

注入される Map のタイプが java.util.HashMap であることをSpring XMLファイルでどのように伝えることができますか? または、一般的に Map のクラス名を指定できますか?

を代わりにclass A使用するように変更することはできません。MapHashMap

前もって感謝します !!

4

3 に答える 3

12

使用できますutil:map

<util:map id="someId" map-class="java.util.HashMap">
    <entry key="key1">
        <value>value1</value>
    </entry>
</util:map>

<bean id="a" class="A">
    <property name="mapProperty" ref="someId">
    </property>
</bean>

util名前空間を追加することを忘れないでください。

于 2013-10-17T20:55:40.400 に答える
6

スキーマutil:mapからタグを使用できます。util次に例を示します。

<util:map id="utilmap" map-class="java.util.HashMap">
    <entry key="key1" value="value1"/>
    <entry key="key2" value="value2"/>
</util:map>

<bean id = 'a' class="A">
   <property name="mapProperty" ref="utilmap" />
</bean>

ところで、 raw type は使用しないでくださいHashMap。代わりにパラメータ化された型を使用してください - HashMap<String, String>

于 2013-10-17T20:58:43.977 に答える