Spring bean和javabean的区别

一.spring Bean是什么

在传统的java应用中,bean的生命周期很简单。使用java关键字new进行bean实例化,然后该bean就可以使用了。一旦这个bean不再使用,则有java自动进行垃圾回收。相比之下,Spring容器中的bean的生命周期就显得相对复杂多了。
简单地说:SpringBean是受Spring管理的对象。

二.Spring中如何创建Bean

在Spring中,Bean的创建是由Spring容器进行的。也就是说,在Spring中使用Bean的时候,不是由关键字New来创建实例。

三.Spring中Bean装配方式

1.自动装配
2.使用XML装配
3.使用java装配

四.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)