3.2.4.1. 创建托管 Bean
如需创建托管 bean,只需要在 Java 类添加 @org.springframework.stereotype.Component
注解。示例:
package com.sample.sales.core;
import com.sample.sales.entity.Order;
import org.springframework.stereotype.Component;
@Component(OrderWorker.NAME)
public class OrderWorker {
public static final String NAME = "sales_OrderWorker";
public void calculateTotals(Order order) {
}
}
建议为 bean 分配一个唯一的名称,按照 {projectname}{class_name}
格式,并且用常量 NAME
定义。
@javax.annotation.ManagedBean 注解也可以用来定义托管 bean,但是在部署应用至某些应用服务器的时候有可能会出问题。因此,建议只使用 Spring 框架的 @Component 注解。 |
托管 bean 的类定义需要放在 spring.xml 文件的 context:component-scan
元素指定的扫描目录树下。此时,spring.xml
的示例:
<context:component-scan base-package="com.sample.sales"/>
也就是说,扫描此应用程序 block 中带注解的 bean 会从包的 com.sample.sales
目录开始。
托管 bean 可以在任何层创建,因为 Spring 框架的容器在应用程序所有标准的 block 里面都有用到。