我想知道如何使用DI代替静态块
private static String p1;
private static String p2;
private static String p3;
private static interface i1;
static {
Interface1 i2 = new Class1 ( new Class2 ( p1 , p2 ) );
Class2 c1 = new Class2 ( p3 , parameter);
i1 = //some statement
}
答案 0 :(得分:0)
要在Spring中使用DI,您需要在要注入的类之上使用@Component或@Service,例如:
@Component
class Class1 implements Interface1 {
...
}
@Component
class Class2 {
...
}
现在在要注入bean的类中这样做:
@Component
class ClassOfInjection {
@Autowired
private Class1 c1;
@Autowired
private Class2 c2;
}
您可以找到更多详细信息here。