ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
如上图所示,spring ioc容器能识别3种配置元数据;作为开发人员的你通过这些配置元数据就能告诉spring如何去实例化,配置,组装应用中的对象。 传统上,配置元数据使用简单直观的xml格式,也是本章大部分表达spring ioc容器的关键概念和特点使用的格式。 定义bean的配置必须由容器管理。基于xml的配置元数据把bean配置为顶级元素`<beans>`内的元素`<bean>`。java注解配置通常在@Configuration类中使用@Bean。 这些bean定义对应组成程序的实际对象。通常,你可以定义服务层对象,数据访问(DAOs)对象,表示层对象如Struts Action,基础对象如Hibernate SessionFactories,JMS 队列等等。通常不会在容器中配置细粒度的对象,因为这些对象的创建和加载是数据访问层和业务逻辑层的责任。然而,你可以使用spring集成AspectJ来配置那些ioc 容器控制之外所创建的对象。参考[aop-configurable](https://docs.spring.io/spring/docs/5.0.6.RELEASE/spring-framework-reference/core.html#aop-atconfigurable)。 下面是一个基于xml的基本配置示例 ~~~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 id="..." class="..."> <!-- 这里是bean的配置和组合对象 --> </bean> <bean id="..." class="..."> <!-- 这里是bean的配置和组合对象 --> </bean> <!--更多的bean--> </beans> ~~~ 属性id是字符串,用来标识唯一的bean。属性class标识bean的类型,使用带包结构的完整类名。组合对象要引用属性id的值。这里并没有给出示例,可以参考[依赖](https://docs.spring.io/spring/docs/5.0.6.RELEASE/spring-framework-reference/core.html#beans-dependencies)。