2015-06-09 160 views
0

我开始学习Spring框架,术语POJO来了很多次,我很困惑什么是正常的(动物A1 =新的动物())对象和POJO对象之间的区别..任何人都可以解释我什么是Java中的Pojo?

+2

从谷歌的第一个结果:* POJO,或简单的旧Java对象,是一个普通的Java对象类(即,不是一个JavaBean,EntityBean等),并没有服务于任何其他特殊角色,也没有实现任何特殊任何Java框架的接口。*。基本上它只是一个*简单/普通的对象*在Java中。 – TheLostMind

+0

Wikipedia可以做到这一点:http://en.wikipedia.org/wiki/Plain_Old_Java_Object – Jens

+0

在回顾了这个问题的不同反应并做了一些Google研究之后,我确信POJO有多种定义,而且有些定义似乎是矛盾的。恐怕你必须根据上下文来弄清作者的含义。但至少你现在有几种不同的可能性可供选择。 – ajb

回答

3

POJO的

Plain Old Java Object 

是一个Java对象,它不受除Java语言规范强制规定以外的任何限制的约束。即POJO不应该

扩展预先设定的类

实现预先设定的接口

内含预先指定的注释

基本上与属性的类,它的getter和setter。

1
  • POJO,或普通Java对象,是一个普通的Java对象类(即 是,没有一个JavaBean,实体Bean等)
  • 它不提供任何其他特殊作用,也不实施任何 任何Java框架的特殊接口。
  • 这个词是由Martin Fowler,Rebbecca帕森斯和Josh 麦肯齐谁相信,通过创建缩写POJO,这种 对象将有一个“奇特名称”,从而认为 他们是堪用有说服力的人创造的。
+0

有趣......你说POJO是一个“普通”对象类,即不是JavaBean,但维基百科文章说,JavaBean是一种特殊类型的POJO,这是矛盾的。实际上,维基百科的文章说POJO除了Java语言放在他们身上之外没有任何限制,但是JavaBean确实有一些限制 - 它必须有一个无参数的构造函数,它必须有getter和具有特定名称的制定者等....所以现在我想知道是否有人真的知道POJO是什么。但无论如何,这是一个很酷的名字。 – ajb

+0

你说得对@ajb。维基百科也这样说。 “我们想知道为什么人们反对在他们的系统中使用常规物体,并得出结论说这是因为简单的物体缺乏一个奇特的名字,所以我们给了他们一个,并且它很好地被捕获了。”请评论,如果你可以给更多的建议。谢谢。 –

2

简单地说,除了动物类可以有其他方法并且可以分别扩展或实现其他类或接口,普通(Animal a1 = new Animal())对象和pojo对象之间没有区别,但POJO类只有getter,setter方法,并且不扩展或实现预先指定的类或接口。 (朴素的旧Java对象)不过是一个简单的java类,它具有属性(变量)及其getter setter方法来管理pojo对象。

-1

是的,它是一个普通的java类,你可以创建变量并实现getter和setter方法并使用它。

相关问题