Spring Bean与javaBean区别

Posted 差125w提埃尔法

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Bean与javaBean区别相关的知识,希望对你有一定的参考价值。

传统的java应用中,javabean遵循一些规范,规范如下:
1、这个类必须具有一个公共的(public)无参构造函数;
2、所有属性私有化(private);
3、私有化的属性必须通过public类型的方法(getter和setter)暴露给其他程序,并且方法的命名也必须遵循一定的命名规范。
4、这个类应是可序列化的。(比如可以实现Serializable 接口,用于实现bean的持久性)

Spring容器对Bean没有特殊要求,不像javaBean一样遵循一些规范(不过对于通过设置方法注入的Bean,一定要提供setter方法)

用处:

传统javaBean更多地作为值传递参数,
而Spring中的bean用处几乎无处不在,任何组件都可以被称其bean。

生命周期:

传统的java应用中,bean的生命周期很简单。使用java关键字new进行bean实例化,然后该bean就可以使用了,一旦该bean不再使用,则由java自动进行垃圾回收。

Spring中的Bean由Spring容器管理其生命周期行动,较为复杂。

传统java:子类是父类的加强,是一种特殊的父类。
Spring中bean:子bean和父bean可以是不同的类型。

传统java:继承是类与类之间的关系,主要表现为方法及属性的延续。
Spring中的bean:Spring中的bean的继承是实例之间关系,主要表现为参数值得延续。

传统java:子类实例完全当成父类实例使用。
Spring中bean:子bean不可作父bean使用。

以上是关于Spring Bean与javaBean区别的主要内容,如果未能解决你的问题,请参考以下文章

Model,javabean和POJO之间的区别

javabean与vo有啥区别??

JavaBean

JavaBean与EJB的区别与应用

jsp找不到bean的get方法

spring依赖注入中获取JavaBean