7.5.10: Spring的Bean和JavaBean的比较

Spring容器对Bean没有特殊要求,甚至不要求该Bean像标准的JavaBean那样必须为每个属性提供对应的getter和setter方法。Spring中的Bean是Java实例、Java组件;而传统的Java应用中的JavaBean通常作为DTO(数据传输对象),用来封装值对象,在各层之间传递数据。

虽然Spring对Bean没有特殊要求,但还是建议Spring中的Bean应该尽量满足如下几个原则:

① 尽量为每个Bean实现类提供无参数的构造器。

② 接受构造注入的Bean,应该提供对应的构造函数。

③ 接受设值注入的Bean,应该提供对应的setter方法,并不强制要求提供对应的getter方法。

传统的JavaBean和Spring中的Bean存在如下区别

① 用处不同:传统的JavaBean更多作为值对象传递参数;Spring中的Bean用处几乎无所不包,任何应用组件都被称为Bean。

② 写法不同:传统的JavaBean作为值对象,要求每个属性都提供getter和setter方法;但Spring的Bean只需为接受设值注入的属性提供setter方法。

③ 生命周期不同:传统的JavaBean作为值对象传递,不接受任何容器管理其生命周期;但Spring中的Bean由Spring管理其生命周期行为。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值