我目前正在使用CDI(Weld)和tomcat 6作为servlet-container。在配置中使用WeldLifecycleListener,进行依赖注入非常简单。
我的问题是:是否有相当于Spring的WeldLifecycleListener来避免从ApplicationContext实例化bean?
答案 0 :(得分:2)
在Spring 3中,您可以使用@Named
和@Inject
等JSR-330注释(请参阅http://blog.springsource.com/2009/09/29/spring-framework-3-0-rc1-released/)。
当您通过将以下内容添加到spring配置文件来启用组件扫描时,将自动检测并实例化带有@Named
注释的类:
<context:component-scan base-package="${base-package}" />
其中${base-package}
是包含所有组件的软件包(直接或在子包中)。
答案 1 :(得分:1)
我不确定WeldLifecycleListener
但可以指出自动依赖注入
@Resource注释可用于按名称自动连线。
如果您不想在Spring配置中定义任何bean,请使用组件扫描自动检测组件并在bean上使用注释@Component - 此+ @ Autowire / @资源将简化您的配置。