Spring 框架支持多种方式的依赖注入,其中注解方式是现代 Spring 开发中非常常用和推荐的方式。注解不仅简化了配置,还使得代码更清晰,更易于理解和维护。本文将详细介绍如何使用注解实现 Spring 依赖注入。
一、依赖注入概述
依赖注入(Dependency Injection, DI)是一种设计模式,它将对象的依赖交给外部容器管理,而不是在对象内部自行创建这些依赖。Spring 框架通过 IoC(控制反转)容器实现了依赖注入,允许开发者轻松地管理对象及其依赖关系。
二、注解注入概述
Spring 提供了一系列注解,用于实现依赖注入。常用的注解包括:
@Autowired@Resource@Inject
1. @Autowired
@Autowired 是 Spring 提供的注解,用于自动装配 Bean。它可以用在构造函数、Setter 方法和字段上。
2. @Resource
@Resource 是 JSR-250 提供的注解,Spring 对其进行了支持。它可以通过名称或类型注入 Bean。
3. @Inject
@Inject 是 JSR-330 提供的注解,与 @Autowired 类似,但更标准化。
三、使用注解实现依赖注入
1. 项目结构
一个典型的 Spring 项目结构如下:
my-spring-annotation-injection-project/
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── example/
│ │ │ └── project/
│ │ │ ├── config/
│ │ │ │ └── AppConfig.java
│ │ │ ├── service/
│ │ │ │ ├── ExampleService.java
│ │ │ │ └── AnotherService.java
│ │ │ └── controller/
│ │ │ └── ExampleController.java
│ └── resources/
│ └── application.properties
└── pom.xml
2. Java 类定义
// ExampleService.java
package com.example.project.service;
import org.springframework.stereotype.Service;
@Service
public class ExampleService {
public String serve() {
return "Service is serving";
}
}
// AnotherService.java
package com.example.project.service

最低0.47元/天 解锁文章
1367

被折叠的 条评论
为什么被折叠?



