dan*_*nik 15 spring spring-mvc
据我所知,当使用依赖注入时,所有bean都在Start上初始化.
<bean id="userPreferences" class="com.foo.UserPreferences">
</bean>
<!-- a singleton-scoped bean injected to the above bean -->
<bean id="userService" class="com.foo.SimpleUserService">
<!-- a reference to the userPreferences bean -->
<property name="userPreferences" ref="userPreferences"/>
</bean>
Run Code Online (Sandbox Code Playgroud)
并且上面的配置意味着在应用程序启动时创建的userService和userPreferences.这是对的吗?
使用自动装配和使用时 <context:component-scan>
public class SimpleUserService{
@Autowired
UserPreferences userPreferences;
//omitted
}
Run Code Online (Sandbox Code Playgroud)
1)是否在Application init上创建了userPreference?
2)autowire注入的bean的默认范围是什么?我们如何更改它?
3)如何影响豆类创造和豆类注射?
希望我清楚自己.
Ral*_*lph 12
首先,你应该添加@Service或@Component到SimpleUserService类.
也许你应该花一些时间来理解Spring的生命周期.您需要了解Spring以这种方式工作(不是100%正确):
但它不能以这种方式工作:获取一个类,查看它需要创建此引用(递归)然后创建类的引用.
如果你理解了这一点,那么你也会理解,bean的@Scope是在bean声明/类中定义的,而不是在引用中定义的.
| 归档时间: |
|
| 查看次数: |
16361 次 |
| 最近记录: |