@Autowired
@Autowired注解用于实现依赖注入(Dependency Injection,DI)。它可以应用于类属性、方法和构造函数。 当 Spring 容器创建一个 bean 时,@Autowired 注解会自动将容器中匹配的 bean 实例注入到被标注的属性、方法或构造函数中。这样可以降低代码之间的耦合性,提高可维护性。 在Spring中,Bean的默认作用域是单例(Singleton),这意味着在Spring容器中只会存在一个实例。所以,当你在两个类(Class A和Class B)中使用@Autowired注解注入相同类型的Bean(C类型)时,这两个类中的C实例是相同的。 修饰方法import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component public class ExampleService { private final ExampleRepository exampleRepository; @Autowired public ExampleService(ExampleRepository exampleRepository) { this.exampleRepository = exampleRepository; } }在这个例子中,ExampleService 类依赖于 ExampleRepository 类的实例。通过在构造函数上添加 @Autowired 注解,我们告诉 Spring 自动注入一个 ExampleRepository 类型的 bean。这样,我们不需要手动创建和管理这些对象及其依赖关系,Spring 会帮我们处理 修饰属性
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component public class MessageService { // 使用 @Autowired 注解注入依赖 @Autowired private MessageRepository messageRepository; public List<Message> getAllMessages() { // 调用 messageRepository 的方法获取数据 return messageRepository.findAll(); } }