【javaEE进阶1】spring简介&IoC
Spring 是一个开源的 JavaEE 全栈应用框架,主要用于简化企业级应用开发。它提供了 IOC(控制反转)和 AOP(面向切面编程)等功能。
IOC,即控制反转,是一种设计思想,将传统的对象创建和依赖管理交给 Spring 容器来自动实现。这样可以减少代码的耦合度,提高系统的可维护性和可测试性。
简单来说,IOC 容器负责对象的创建、初始化、配置和管理。
Spring 的 IOC 容器主要通过以下方式管理对象:
- 依赖注入(DI):IOC 容器在运行期间动态地将依赖注入到对象之中。
- BeanFactory:IOC 容器的基本实现,提供了基本的依赖注入支持。
- ApplicationContext:BeanFactory 的子接口,提供了更多高级特性,如国际化、事件传播等。
以下是一个简单的 Spring 应用示例:
- 添加 Spring 依赖到项目的
pom.xml
文件中:
<dependencies>
<!-- Spring Core -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>5.3.20</version>
</dependency>
<!-- Spring Context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.3.20</version>
</dependency>
</dependencies>
- 创建一个简单的类,比如
HelloWorld.java
:
package com.example;
public class HelloWorld {
private String message;
public void setMessage(String message) {
this.message = message;
}
public void getMessage() {
System.out.println("Message: " + message);
}
}
- 创建 Spring 配置文件
applicationContext.xml
:
<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.xsd">
<bean id="helloWorld" class="com.example.HelloWorld">
<property name="message" value="Hello World!"/>
</bean>
</beans>
- 使用 Spring 容器获取对象并调用方法:
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class App {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
HelloWorld helloWorld = (HelloWorld) context.getBean("helloWorld");
helloWorld.getMessage();
}
}
运行 App.java
,Spring 容器会自动创建 HelloWorld
类的实例,并注入 message
属性,然后输出设置的消息。这就是 Spring 的 IOC 的基本使用方法。
评论已关闭