Java Spring IoC&DI :探索Java Spring中控制反转和依赖注入的威力,增强灵活性和可维护性
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.stereotype.Component;
@Component
public class IoCDemo {
private Dependency dependency;
// 使用构造器注入依赖
public IoCDemo(Dependency dependency) {
this.dependency = dependency;
}
public static void main(String[] args) {
ApplicationContext context = new AnnotationConfigApplicationContext(Config.class);
IoCDemo demo = context.getBean(IoCDemo.class);
demo.dependency.doWork();
}
}
class Dependency {
public void doWork() {
System.out.println("Dependency is working.");
}
}
@Configuration
@ComponentScan(basePackages = "com.yourpackage")
class Config {
}
这个简单的例子展示了如何在Java Spring中使用控制反转(Inversion of Control, IoC)和依赖注入(Dependency Injection, DI)。IoCDemo
类中的Dependency
通过构造器注入,而不是在IoCDemo
内部显式创建。这样,我们就能在Spring容器中管理IoCDemo
的生命周期和它的依赖Dependency
。Config
类使用注解标记,Spring会使用这些注解来自动配置容器。在main
方法中,我们创建了一个Spring应用上下文,并从中获取了IoCDemo
的实例,这个实例已经被注入了Dependency
。
评论已关闭