私はEnumクラスを持っています。春 - アノテーション付きのマップでEnumキーを設定する方法
public enum MyEnum{
ABC;
}
私の 'Mick'クラスはこのプロパティを持っています。
private Map<MyEnum, OtherObj> myMap;
<util:map id="myMap">
<entry key="ABC" value-ref="myObj" />
</util:map>
<bean id="mick" class="com.x.Mick">
<property name="myMap" ref="myMap" />
</bean>
これは問題ありません。
このxml構成をSpringアノテーションに置き換えたいと思います。
マップを自動配線する方法はありますか?
xml configから@Autowiredアノテーション(MickクラスのmyMap属性)に切り替えると、Springはこの例外をスローします。
nested exception is org.springframework.beans.FatalBeanException: Key type [class com.MyEnum] of map [java.util.Map] must be assignable to [java.lang.String]
Springはこれ以上認識できません文字列ABCをMyEnum.ABCオブジェクトとして返します。
いいですか?
ありがとう
それはあなたが何をしようとしては明らかではありません。どのようなアノテーションを考えていますか? – skaffman
@Autowired注釈を使用したいと思いますが、機能していません。 SpringがStringの代わりにEnumとしてそのKey値を扱うように指示するには何か他を指定する必要がありますか? – mickthompson