如何注入@Any Singletons

时间:2016-10-07 18:16:46

标签: java

我在向Instance注入单例时遇到问题。我想注入所有实现接口Inter的单例,我想从类注释中获取值。我怎么能这样做我的解决方案不起作用:(

接口

public interface Inter {
    String getString();
}

注释:

 @Retention(RetentionPolicy.RUNTIME)
    @Target(ElementType.TYPE)
    public @interface IConf {
        String fileName();
    }

实现界面的类

@Singleton
@IConf(fileName = "Config.xml")
public class ConfObjt implements Inter{

    public String getString() {
        // TODO Auto-generated method stub
        return "";
    }
}

主要课程

@Singleton
@Startup
public class Sing {

    @Inject @Any
    Instance<Inter> beans;

    @PostConstruct
    public void init(){
        System.out.println("metoda init");
        for(Inter inter : beans) {
            Class<?> clazz = inter.getClass();
            IConf ano = clazz.getAnnotation(IConf.class);
            System.out.println(ano.fileName());
        }
    }
}

0 个答案:

没有答案