了解Spring框架的核心概念和优势
Spring 是一个开源的企业级 Java 应用程序框架,由 Rod Johnson 创建。它提供了全面的基础架构支持,让开发者可以专注于业务逻辑的实现。
Spring 简化了企业级应用开发,提供了一致的编程模型,降低了开发复杂度,提高了代码的可维护性和可测试性。
Spring 框架由多个模块组成,每个模块都有特定的功能:
在 pom.xml 中添加 Spring 依赖:
<dependencies>
<!-- Spring Context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.3.20</version>
</dependency>
</dependencies>// HelloWorld.java
package com.example.spring;
public class HelloWorld {
private String message;
public void setMessage(String message) {
this.message = message;
}
public void getMessage() {
System.out.println("消息:" + message);
}
}创建 applicationContext.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.xsd">
<!-- 定义 Bean -->
<bean id="helloWorld" class="com.example.spring.HelloWorld">
<property name="message" value="Hello Spring!"/>
</bean>
</beans>// MainApp.java
package com.example.spring;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class MainApp {
public static void main(String[] args) {
// 加载 Spring 配置文件
ApplicationContext context =
new ClassPathXmlApplicationContext("applicationContext.xml");
// 从容器中获取 Bean
HelloWorld obj = (HelloWorld) context.getBean("helloWorld");
// 调用方法
obj.getMessage();
// 输出:消息:Hello Spring!
}
}// AppConfig.java
package com.example.spring;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@Configuration
@ComponentScan(basePackages = "com.example.spring")
public class AppConfig {
// 配置类
}// HelloWorld.java
package com.example.spring;
import org.springframework.stereotype.Component;
@Component
public class HelloWorld {
private String message = "Hello Spring with Annotations!";
public void getMessage() {
System.out.println("消息:" + message);
}
}// MainApp.java
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class MainApp {
public static void main(String[] args) {
// 使用注解配置创建容器
ApplicationContext context =
new AnnotationConfigApplicationContext(AppConfig.class);
// 获取 Bean
HelloWorld obj = context.getBean(HelloWorld.class);
obj.getMessage();
}
}点击按钮查看 Spring 如何管理对象:
1. Spring 的核心特性是什么?