我使用Spring 3.0.x和下面我implementatons的一个枚举单件模式。我可以在枚举上使用Spring的@Component吗?
public enum Person implements Nameable {
INSTANCE;
public String getName(){
// return name somehow (Having a variable but omitted for brevity)
}
}
最近我们开始通过Spring收集这些类型,所以我需要给我的类添加@Component。
@Component
public enum Person implements Nameable {
INSTANCE;
public String getName(){
// return name somehow (Having a variable but omitted for brevity)
}
}
和收集方法是
@Autowired
public void collectNameables(List<Nameable> all){
// do something
}
后这样我观察到的故障和原因是弹簧不能intialize枚举类(这是可以理解)。
我的问题是 -
是否有任何其他方式usign我可以记住我的枚举类作为一个bean?
或者我需要改变我的实现?
如果您使用枚举实现一个单身,你为什么要在所有注入它,为什么如果只有一个实例,将它作为列表注入? – skaffman 2011-04-27 10:46:49
不仅有一个实例,但许多,他们是跨越用于先前实施作为一个单独的模块别人,而是一些开发商选择实现的枚举单彭定康(像我一样),但现在它开始作为失败有需要收集所有Person的实例。 – Premraj 2011-04-28 06:04:18