3.2.4.1. 创建托管 Bean

如需创建托管 bean,只需要在 Java 类添加 @org.springframework.stereotype.Component 注解。示例:

  1. package com.sample.sales.core;
  2. import com.sample.sales.entity.Order;
  3. import org.springframework.stereotype.Component;
  4. @Component(OrderWorker.NAME)
  5. public class OrderWorker {
  6. public static final String NAME = "sales_OrderWorker";
  7. public void calculateTotals(Order order) {
  8. }
  9. }

建议为 bean 分配一个唯一的名称,按照 {projectname}{class_name} 格式,并且用常量 NAME 定义。



@javax.annotation.ManagedBean 注解也可以用来定义托管 bean,但是在部署应用至某些应用服务器的时候有可能会出问题。因此,建议只使用 Spring 框架的 @Component 注解。

托管 bean 的类定义需要放在 spring.xml 文件的 context:component-scan 元素指定的扫描目录树下。此时,spring.xml 的示例:

  1. <context:component-scan base-package="com.sample.sales"/>

也就是说,扫描此应用程序 block 中带注解的 bean 会从包的 com.sample.sales 目录开始。

托管 bean 可以在任何创建,因为 Spring 框架的容器在应用程序所有标准的 block 里面都有用到。