Java 豆。。。到底是什么

Java 豆。。。到底是什么,java,spring,Java,Spring,什么是spring框架中的bean? bean的用途是什么?bean是具有遵循bean约定的setter和getter的POJO bean用于传递数据,JSP对bean也有特殊的支持。bean是一个具有公共标准构造函数、getter/setter(属性)的类,它必须是可序列化的。维基百科对此有解释 通过这种方式,spring框架知道如何创建bean实例(公共标准构造函数)以及存在哪些属性(带有反射)Java bean规范没有明确说明参数构造函数、getter/setter和serializabl

什么是spring框架中的bean?
bean的用途是什么?

bean是具有遵循bean约定的setter和getter的POJO


bean用于传递数据,JSP对bean也有特殊的支持。bean是一个具有公共标准构造函数、getter/setter(属性)的类,它必须是可序列化的。维基百科对此有解释


通过这种方式,spring框架知道如何创建bean实例(公共标准构造函数)以及存在哪些属性(带有反射)

Java bean规范没有明确说明参数构造函数、getter/setter和serializable,但spring不要求您的bean遵循规范。spring处理普通的旧Java对象,它们是否符合javabean规范


豆子有什么用?他们用密码表达你的愿望。Spring所做的一切就是管理它们的生命周期并将它们连接在一起以实现您的目标。

在Spring的上下文中,bean是一个托管对象。什么是托管对象?它是Spring知道的对象,Spring知道如何操作它,例如注入属性、调用回调方法等

然后,常规java类(Spring不知道)和bean(Spring知道)之间就有区别了

通常,SpringBean遵循JavaBean约定,因此Spring可以轻松地操作它们。例如,如果bean声明有一个属性
xxx
,那么Spring将期望
getXxx
setXxx
出现。然而,由于Spring2.X可以依赖注入私有变量(使用注释),因此不再需要定义公共setter来为属性启用依赖注入


(术语bean令人困惑,因为它经常被用来表示(1)由容器管理的东西,如企业java bean(EJB)或(2)遵循java bean约定的东西。)

Spring世界中的bean是使用Spring约定使用bean id或名称定义的任何对象。它的生命周期由Spring容器管理。bean可以是POJO或带有静态方法的工厂实例。它甚至可以是一个JNDI资源,而不是Java Bean所必需的。Spring容器管理的Bean甚至可以是一个代理Bean,它可以隐藏Bean(特别是使用TransactionProxyFactory)


简而言之,任何生命周期由Spring容器管理的bean都是Spring bean。

Spring bean类不一定必须是JavaBean。Spring框架可以使用工厂方法实例化bean。因此,不要求类具有公共构造函数。事实上,Spring也处理带有参数的构造函数。也许我遗漏了一些东西,但每个人似乎都回答了“什么是JavaBean?”。尽管Springbean类通常是JavaBean,但这不是一个要求。你可以用任何类定义一个Springbean。这真的是一个没有焦点的问题吗?你能告诉我什么是真正有焦点的问题吗!!!也许我们能知道。问题的焦点在于他到底喜欢学什么。有很多区别。你把Java bean和Spring bean混淆了。Spring bean不是Java bean吗?Spring bean可能是Java bean,但不一定是Java bean