在没有类bean配置的情况下定义Spring bean

时间:2012-03-15 18:34:45

标签: java spring autowired

如何定义一个只需要@Autowired的Spring bean来定义某种类型的新bean?

我已经看到了一个解决方案,其中创建了服务层服务,而没有为新服务提供额外的bean定义。对于bean定义,我指的是特定于此服务的配置文件上的一行。

是否可以定义bean,以便某些包(例如com.foo.bar.service.*)在调用时自动定义,只添加@Autowired而不在该包中为每个类定义任何其他配置?

1 个答案:

答案 0 :(得分:1)

您可以编写自己的代码来扫描Java包,并为找到的每个类添加一个bean。这通常不是必需的,因为许多软件包都有辅助类,不应该作为bean公开。

但更有可能的是,bean会在其上添加一个@Component, @Repository, @Service, @Controller注释,然后Spring将这些注释为bean。

http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/beans.html#beans-scanning-filters