Spring零基础入门IOC攻略
什么是IOC
IOC,即控制反转是一种编程思想,它是指在对象创建过程中,不再需要程序员手动去依赖其他对象,而是通过容器来动态注入依赖。Spring是目前IOC容器的代表。
IOC的优势
- 降低耦合度,更好的解决类之间的依赖关系
- 提高代码复用性,更灵活的管理对象
零基础入门IOC
1. 安装 Spring
首先需要在你本地的开发环境中安装Spring。Spring的安装非常简单,可以使用Maven管理工具来进行。在pom.xml中加入如下配置:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.1.9.RELEASE</version>
</dependency>
2. 基本概念
- Bean:在Spring容器中管理的实例对象,是应用的基本构成单元。
- IOC容器:Spring框架的核心,它是用来管理Bean对象的容器。
- ApplicationContext:IOC容器的代表,是Spring的上下文对象,负责管理所有Bean。
- DI(Dependency Injection):依赖注入,是指通过IOC容器来自动注入对象依赖的关系。
3. 使用XML配置IOC
首先创建一个Java类,命名为HelloSpring,在这个类中定义一个方法,如下:
public class HelloSpring {
private String name;
public void setName(String name) {
this.name = name;
}
public void sayHello() {
System.out.println("Hello " + name + "!");
}
}
接下来在resources文件夹下创建一个Spring的配置文件spring-config.xml,如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="helloSpring" class="com.example.demo.HelloSpring">
<property name="name" value="Spring"/>
</bean>
</beans>
通过Spring的配置文件,定义一个Bean对象helloSpring,并将name属性注入进去。
最后在Main方法中,加载配置文件,并获取Bean实例,调用方法输出结果
public class Main {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("spring-config.xml");
HelloSpring helloSpring = (HelloSpring) context.getBean("helloSpring");
helloSpring.sayHello();
}
}
控制台输出结果为:
Hello Spring!
通过以上例子,我们就可以基本了解XML配置IOC的实现过程。
4. 使用注解配置IOC
更多实际应用中我们使用注解来组织Spring的配置,通过以下标注代码可以实现同样的效果:
在HelloSpring类中加入注解:
@Component
public class HelloSpring {
private String name;
public void setName(String name) {
this.name = name;
}
public void sayHello() {
System.out.println("Hello " + name + "!");
}
}
在Main类中通过注解获取Bean实例:
public class Main {
public static void main(String[] args) {
ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
HelloSpring helloSpring = (HelloSpring) context.getBean("helloSpring");
helloSpring.sayHello();
}
}
在ApplicationContext中指定加载的类:
@Configuration
@ComponentScan(basePackages = "com.example.demo")
public class AppConfig {
}
这样我们就可以使用注解的方式来配置IOC。通过以上这两个例子,我们可以更全面地了解Spring的IOC容器的基本使用,包括XML和注解两种方式。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Spring零基础入门IOC - Python技术站