java中的bean,Java中的bean

Java中经常听到和用到Bean,你能说清楚Bean这个概念吗?如果不能,本文可以帮你解惑。不是特别准确的划分的话,Java中有两类Bean:JavaBean和Spring中的Bean。

JavaBean

JavaBean比较好理解,因为它是有标准的(可以点击 这里

从 oracle 官方下载specification),有兴趣的可以阅读一下,内容还挺多的。简单来说,这个标准规定了符合以下四个条件的 Java 类就称之为JavaBean:

必须

实现了 Serializable

或 Externalizable

,即JavaBean必须是可序列化的;

必须

包含一个public的无参构造函数;

所有类的属性 必须

要有对应的public的get和set方法;

所有类属性 应该

是私有的。

这就是JavaBean的规范要求,其实比较简单,就是一个概念定义。这里还要提一下的就是Java中的POJO(Plain and Old Java Object),这个概念没有什么标准,属于约定俗成的概念,比较简单的Java类就可以称之为POJO,至于简单的界限是什么,没有明确的标准。一般JavaBean都属于POJO,但POJO未必是JavaBean。

Spring Bean

在Spring中,不夸张的说,一切都可以是Bean(当然还是有点夸张了)。但用过Spring的人都知道,如果按照JavaBean的规范看的话,Spring中的Bean大多不算是JavaBean,至少很少有人会实现序列化。所以,在Spring中,Bean这个概念被扩大化了,Spring中的Bean更像是POJO。官方的解释如下:

In Spring, the objects that form the backbone of your application and that are managed by the Spring IoC container are called beans. A bean is an object that is instantiated, assembled, and otherwise managed by a Spring IoC container. Otherwise, a bean is simply one of many objects in your application. Beans, and the dependencies among them, are reflected in the configuration metadata used by a container.

简单说: 在Spring中,被Spring容器管理的那些类(对象)都是(Spring)Bean

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值