这个上下文的技术含义是什么意思plain-vanilla Java Beans & plain-vanilla Java Class ??什么是普通香草JavaBeans和普通香草Java类?
回答
“普通香草”豆/类是指一个非常基本的类,通常具有以下属性;
- 不延长或实施任何
- 拥有私有类变量
- 有一个空的构造
- 有标准的getter/setter方法
这也被称为POJO(简单旧Java对象)。例如;
public class MyPojo
{
/*
* Private class variables
*/
private String name;
private int size;
/**
* Empty constructor
*/
public MyPojo()
{
}
/*
* Standard getter/setters
*/
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public int getSize()
{
return size;
}
public void setSize(int size)
{
this.size = size;
}
}
“不扩展或实现任何东西”可能更确切地说是“不扩展或实现任何来自给定框架的任何东西”,这有点模糊 - 但对于POJO实现/扩展东西 - 东北你自己的东西很好。 – nos 2010-09-15 09:48:17
的“纯香草”参考是从JavaBeans的(一个古老的最佳实践为可重复使用的GUI窗口小部件)和EnterpriseJavaBeans(在Java EE规范的元素)区别开来。
普通香草类不需要满足任何框架或方案的要求。
普通香草豆是一个带有增变器和存取器(即getter/setter)的类,但没有任何行为。
我认为“普通的香草的Java Bean”和POJO的历史是这样的:
- Java 1.0中出来,包括Java Bean的规范(如默认构造函数,getter/setter方法的属性等)允许它们与VB风格的编辑器进行交互。
- “企业”Java Bean(EJB)1.0出现用于描述分布式事务性持久组件。
- J2EE标准于1999年在Java One上发布,它为我们提供了管理对象生命周期,线程,池等的容器,并为EJB提供了诸如命名,查找等企业服务。
- 人们发现EJB 1.0和2.0规范需要大量的代码,并且可以用来做简单的事情。
- 与EJB 2.0的冲突将我们带回到POJO,引发了Spring,Guice和其他尝试再次简化事情的DI/AOP框架。
谢谢,历史沿革对理解这一点非常有用。 – Gruber 2017-05-12 17:17:48
“普通香草Java类”(又名POJO)是一个具有属性的类。正如名字所说,它是一个普通的旧Java对象。
理想情况下,POJO不会扩展任何类,也不会实现任何接口。它也没有注释。
“普通香草Java Bean”(又名JavaBean)是一个有一定要求的类。
- 它必须有一个默认的构造函数
- 它必须有getter和setter其属性
- 它必须实现
Serializable
所以一个JavaBean是一种POJO的(不是一个理想的POJO因为它实现了Serializable)有一些限制。
资源:
关于同一主题:
'香草' 的描述来自冰淇淋,我想,并介绍了常用的或基本的味道可用。因此,香草pojos是朴实无华,简单朴素的pojos。该术语也用于金融和性,也可能用于其他领域。 (这是最非技术性的SO回答我已发布!)
非技术性,但非常有启发性 – dellasavia 2018-03-08 16:07:21
- 1. 在Quantlib中计算现金流固定腿普通香草IRS
- 2. 如何将Vim重置为普通的香草安装?
- 3. 用于普通香草的PHP函数增强库php
- 4. Laravel - 拿什么香草PHP
- 5. 什么是“香草”对象列表
- 6. 的jsfiddle阿贾克斯/回声/ JSON不是普通的香草工作的JavaScript
- 7. jQuery来香草JS
- 8. “香草”网络蟒
- 9. tf.train.GradientDescentOptimizer是否为香草GradientDescent?
- 10. 比较香草JS和JQuery
- 11. 香草Javascript初学者
- 12. JavaScript属性赋值(香草)
- 13. 切换显示javascript香草
- 14. 隐藏div javascript(香草)cookie
- 15. 香草的Web组件JavaScript
- 16. 香草队列创建
- 17. Hue安装在香草hadoop
- 18. 香草js删除id框
- 19. 添加ReactJS到香草JavaScript
- 20. Oneliner香草CSS动画
- 21. 香草砌体+ JQuery翻转
- 22. 香草JS Fizzbuzz不工作
- 23. jquery代码到香草javascript
- 24. 创建香草C++项目
- 25. `香草Satchmo 0.8.1`和`只是Satchmo v0.9.2`有什么区别?
- 26. Theano在Windows 64位和香草Python 3.5
- 27. 香草插件样板和网络包
- 28. 什么是Lodash的_.bind的香草JavaScript等价物?
- 29. 什么是相当于香草JavaScript classList的jQuery?
- 30. 如果您已经在使用框架,您是否永远不写“普通香草”js?
“纯香草”不是一个技术术语。这是一种俗语,与“简单”或“不增强”大致相同。 – 2010-09-15 10:24:47