当前位置: 首页 > news >正文

网站建设与管理课程企业信息查询网

网站建设与管理课程,企业信息查询网,泾阳做网站,深圳聘请做网站人员文章目录 在 Spring Boot 中使用 Autowired 和 Bean 注解示例背景 1. 定义 Student 类2. 配置类:初始化 Bean3. 测试类:使用 Autowired 注解自动注入 Bean4. Spring Boot 的自动装配5. 总结 在 Spring Boot 中使用 Autowired 和 Bean 注解 在 Spring Bo…

文章目录

      • 在 Spring Boot 中使用 `@Autowired` 和 `@Bean` 注解
        • 示例背景
      • 1. 定义 Student 类
      • 2. 配置类:初始化 Bean
      • 3. 测试类:使用 `@Autowired` 注解自动注入 Bean
      • 4. Spring Boot 的自动装配
      • 5. 总结


在 Spring Boot 中使用 @Autowired@Bean 注解

在 Spring Boot 中,依赖注入(Dependency Injection,简称 DI)是通过 @Autowired 注解来实现的,能够有效地简化对象之间的依赖关系。同时,使用 @Bean 注解可以帮助我们在配置类中显式地定义和初始化 Bean。本文将通过一个具体示例,演示如何在 Spring Boot 中使用 @Autowired@Bean 来管理 Bean。

示例背景

假设我们有一个 Student 类,并希望通过配置类 TestConfig 来初始化 Student 对象,之后在测试类中通过 @Autowired 注解将其自动注入并使用。

1. 定义 Student 类

首先,我们定义一个简单的 Student 类,使用 @Data 注解来生成常见的 Getter、Setter、toString 等方法。

import lombok.Data;@Data
public class Student {private String name;
}

在上面的 Student 类中,@Data 注解来自 Lombok,它会自动为我们生成类的所有 Getter、Setter 和 toString 等方法。这样,我们就不需要手动编写这些常见的代码,使得代码更加简洁。

2. 配置类:初始化 Bean

接下来,我们需要创建一个配置类 TestConfig,其中定义一个 @Bean 注解的方法来初始化 Student 对象。

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class TestConfig {@Beanpublic Student studentInit() {Student student = new Student();student.setName("初始化");return student;}
}
  • @Configuration 注解表示该类是一个配置类,Spring 会扫描该类并根据其中的 Bean 定义来初始化 Bean。
  • @Bean 注解用于告诉 Spring 容器:studentInit() 方法返回的对象(在这里是 Student)应该作为一个 Bean 进行管理。这样,Student 对象就会成为 Spring 容器中的一个管理对象。

在这个配置类中,我们显式地初始化了一个 Student 对象,并设置了它的 name 属性为 "初始化"

3. 测试类:使用 @Autowired 注解自动注入 Bean

在测试类中,我们将通过 @Autowired 注解将 Student 对象自动注入,并输出 Student 的名字。

import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;@SpringBootTest
public class StudentTest {@Autowiredprivate Student student;@Testvoid contextLoads13() {System.out.println(student.getName()); // 输出:初始化}
}
  • @SpringBootTest 注解表示这是一个 Spring Boot 测试类,它会启动 Spring 容器来进行集成测试。
  • @Autowired 注解自动注入 Student Bean。Spring 会自动找到符合类型的 Student Bean 并注入到该字段中。
  • 在测试方法 contextLoads13() 中,调用 student.getName() 输出 Student 对象的 name 属性值,应该输出 "初始化",这与我们在 TestConfig 中定义的值一致。

4. Spring Boot 的自动装配

  • 在这个示例中,我们看到通过 @Autowired 注解,Spring 容器会根据 Student 类型自动为我们注入合适的 Bean。无需手动配置或创建实例。
  • 这种自动注入机制是 Spring Framework 中非常强大的特性,可以极大地简化类与类之间的依赖管理。

5. 总结

通过上述示例,我们学到了以下几点:

  • @Bean 注解:通过该注解,我们可以在配置类中显式地定义 Bean,使得对象被 Spring 容器管理。
  • @Autowired 注解:通过该注解,Spring 会自动根据类型将 Bean 注入到需要依赖的地方。
  • @Data 注解:简化了 Student 类的代码,不必手动编写 Getter、Setter 等方法。

在实际开发中,Spring 的依赖注入(DI)功能使得类之间的耦合度大大降低,提高了代码的可维护性和扩展性。通过灵活使用 @Autowired@Bean 注解,可以有效地管理和共享对象。

http://www.dtcms.com/a/603133.html

相关文章:

  • 一小时速通Pytorch之自动梯度(Autograd)和计算图(Computational Graph)(二)
  • Qt开发——信号和槽
  • 常用的C语言编译器 | 各大C语言编译器特点与使用介绍
  • 网站查询ip地址seo优化排名百度教程
  • 【032】Dubbo3从0到1系列之triple协议场景
  • 全媒体网站的建设网站建设怎么样找客户快
  • 成都网站建设推广港哥公司网站开发建设什么会计科目
  • 企业品牌推广网站精品课程网站开发环境
  • CSP-S2024题解游记
  • 深度学习:数据增强(Data Augmentation)
  • 隆尧建设局网站深圳龙岗区地图
  • 【3DV 进阶-8】Hunyuan3D2.1 数据预处理详解- 水密化和采样 watertight and sample
  • Kubernetes入门到精通-k8s 机器节点上怎么测试POD SVC之间网络
  • 医药医疗行业网站建设企业建站方案
  • 荥阳网站制作大地资源影视免费观看
  • kubernetes 安装配置 需要有两个地方配置国内镜像地址
  • 网站查询进入做网站维护累吗
  • HTTP概述 01
  • 天水建网站wordpress熊掌号提交
  • Lua环境的配置 和 Lua的一些简单语法逻辑
  • 怎么把自己的网站放到百度上智通人才招聘网最新招聘
  • 网站建设 专家购物网站用那个软件做
  • 福安市教育局建设网站免费ppt模板下载无水印
  • JavaScript 35个字符串方法完整参数返回值表
  • Vue 3 :生命周期钩子详解
  • 什么值得买网站模版网络设计主要是干什么的
  • Python中的内存管理:垃圾回收机制是如何工作的?
  • 贵州百度seo整站优化快速搭建展示型网站
  • wordpress 搜索引擎收录百度官方优化指南
  • 网站建设与管理期末考试题云南建设厅建设网站首页