前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >「Spring认证」Spring Bean 定义教学

「Spring认证」Spring Bean 定义教学

原创
作者头像
IT胶囊
修改2021-08-19 18:01:54
2970
修改2021-08-19 18:01:54
举报
文章被收录于专栏:IT技能应用

构成应用程序主干并由 Spring IoC 容器管理的对象称为beans。bean 是由 Spring IoC 容器实例化、组装和管理的对象。这些 bean 是使用您提供给容器的配置元数据创建的。例如,您在前面的章节中已经看到的 XML <bean/> 定义的形式。

Spring Bean 定义教学
Spring Bean 定义教学

Bean 定义包含称为配置元数据的信息,容器需要了解以下信息 -

  • 如何创建一个bean
  • Bean 的生命周期细节
  • Bean 的依赖

所有上述配置元数据转换为一组以下属性,这些属性构成每个 bean 定义。

属性和描述

1

班级此属性是强制性的,指定用于创建 bean 的 bean 类。

2

名称此属性唯一指定 bean 标识符。在基于 XML 的配置元数据中,您使用 id 和/或 name 属性来指定 bean 标识符。

3

范围此属性指定从特定 bean 定义创建的对象的范围,将在 bean 范围一章中讨论。

4

构造函数参数这用于注入依赖项,将在后续章节中讨论。

5

特性这用于注入依赖项,将在后续章节中讨论。

6

自动装配模式这用于注入依赖项,将在后续章节中讨论。

7

延迟初始化模式一个延迟初始化的 bean 告诉 IoC 容器在它第一次被请求时创建一个 bean 实例,而不是在启动时。

8

初始化方法在容器设置了 bean 的所有必要属性之后调用的回调。这将在 bean 生命周期章节中讨论。

9

销毁方法销毁包含 bean 的容器时使用的回调。这将在 bean 生命周期章节中讨论。

Spring 配置元数据

Spring IoC 容器与实际写入此配置元数据的格式完全分离。以下是为 Spring Container 提供配置元数据的三种重要方法 -

  • 基于 XML 的配置文件。
  • 基于注解的配置
  • 基于Java的配置

您已经看到了如何向容器提供基于 XML 的配置元数据,但让我们看看另一个基于 XML 的配置文件示例,其中包含不同的 bean 定义,包括延迟初始化、初始化方法和销毁方法 -

代码语言:javascript
复制
<?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-3.0.xsd">

   <!-- A simple bean definition -->
   <bean id = "..." class = "...">
      <!-- collaborators and configuration for this bean go here -->
   </bean>

   <!-- A bean definition with lazy init set on -->
   <bean id = "..." class = "..." lazy-init = "true">
      <!-- collaborators and configuration for this bean go here -->
   </bean>

   <!-- A bean definition with initialization method -->
   <bean id = "..." class = "..." init-method = "...">
      <!-- collaborators and configuration for this bean go here -->
   </bean>

   <!-- A bean definition with destruction method -->
   <bean id = "..." class = "..." destroy-method = "...">
      <!-- collaborators and configuration for this bean go here -->
   </bean>

   <!-- more bean definitions go here -->
   
</beans>

您可以查看Spring Hello World 示例以了解如何定义、配置和创建 Spring Bean。

我们将在单独的章节中讨论基于注解的配置。在开始使用带有注解的 Spring 依赖注入进行编程之前,我们有意在单独的章节中讨论它,因为我们希望您掌握一些其他重要的 Spring 概念。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Spring 配置元数据
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档