看来这里的大部分是在校学生,或者培训部的学生。
看了这里很多帖子,感觉好多人工作经验不长,或者还没有工作,或者没有开发过项目。。其他人不了解,目前我就感觉ACoder有丰富的工作经验。感觉他的观点比较客观,符合实际,只有做了项目的人,或者有不少项目经历的人才能理解到那些。我不是说这个贴,其他的贴我都看过。

呵呵,我昨天被kick out了,今天恢复帐号了。我不想说什么,因为大家心理都明白。
另外,我有个建议,这里是讨论技术的,最好不要掺合对人的讨论,或者动不动批评别人,或者其他难听的话,因为你或许掌握不了批评的语气和措辞(也许你以为是建议)。再说了,如果你是一个在校学生,有什么理由去批评工作过N多年的人,再次提醒,提出一个简单问题的人(在你看来是所谓的简单),他一定就是初学者或傻瓜吗?可能你以为别人跟你一样,都是XXX的学生。你对别人都不了解,很容易产生很多误会的。大家最好只讨论技术。

也许你觉得别人问的问题比较简单,你大可不理,或者心里把他当一大傻瓜。呵呵。 这就是自由开发的交流平台。不要去攻击别人,不要去人身攻击。

这是我的希望。

就问题谈问题,不要从POJO扯到培训去,这是讨论问题大忌,实际就是个态度问题,如果保持一种感恩心态,包括我,能与大家交流,如何男女老少,各式人等,虽然他们可能不同意你观点,但是还愿意在这里发表建议,就表示你已经有影响力,否则,别人就当你是狗屎疯子。我也感谢大家。有感恩就有虚心,两者是一致的,有虚心才有低调,才做到容。一起努力吧。

banq说我不懂得感恩,我不承认。我觉得跟这个帖子所说的是两个问题,不能耦合在一起。

先说感恩。其实这里只要热心帮助别人解决问题的人,我想提问的人都很感激他们,是在心里,当然有时也在帖子回复中表达出来。这是人之常情。当然也有的人,可能没有直接回复感谢的话,但是我想他们心里有。就算是真的有不懂得感恩的人,那也是极少数。很正常,世界因为有了各种不同的人才更加精彩。一个人,在自己力所能及的范围能想帮助别人的人,我想不会太在乎这些的,至少不会太在乎每个人。
另外说到这个帖子,如果 我问的问题,别人那样给我一个回答,我想任何一个正常的普通人,第一个想到的都不是感恩吧。呵呵,想到的都是反驳。

好了,以上不是对任何人有意见,只是对这件事情,澄清下自己的观点。也不想再讨论这个。没有什么意义。

说实话,我还是不明白POJO,网上给的解释,都基本是Plain Ordinary Java Object。 对我理解一点用都没有。如果有朋友确实对此理解比较专业和深入的话,希望可以说出来,在此表示感谢。

如果这样,那这“J道”就和一贯道是一路货色。
不管什么道,都要能容人。有容乃大嘛。不能容人,迟早会变成邪道。

晕到。。。这样的帖子主题竟然能牵扯出这么多问题。

对于POJO,我个人觉得就是一个普通OBJECT, 楼主提到的那些O,都属于POJO.


An acronym for: Plain Old Java Object.

The term was coined while Rebecca Parsons, Josh MacKenzie and I were preparing for a talk at a conference in September 2000. In the talk we were pointing out the many benefits of encoding business logic into regular java objects rather than using Entity Beans. We wondered why people were so against using regular objects in their systems and concluded that it was because simple objects lacked a fancy name. So we gave them one, and it's caught on very nicely.
第一次出现POJO,是martinfowler在2000年9月的一次会议上。
也可以参考下边这个连接:
http://www.webopedia.com/TERM/P/POJO.htm

Acronym for Plain Old Java Object.

POJO, or Plain Old Java Object, is a normal Java object class (that is, not a JavaBean, EntityBean etc.) and does not serve any other special role nor does it implement any special interfaces of any of the Java frameworks. This term was coined by Martin Fowler, Rebbecca Parsons and Josh MacKenzie who believed that by creating the acronym POJO, such objects would have a "fancy name", thereby convincing people that they were worthy of use.

归纳起来理解就是:POJO是一个普通的JAVA对象,它包含业务逻辑处理或持久化逻辑处理,但不是JavaBean,EntityBean。而且不具有任何特殊角色,也不实现任何其他框架的接口,或继承其他JAVA框架的类。
大体上就是这个意思。
不过,按这个理解,我还是有疑问。

这里说的“不实现任何其他框架的接口,或继承其他JAVA框架的类”。
那如果一个类实现了序列化接口,这是JDK中的接口,而非某JAVA框架的接口,假设其他条件满足,这个类算不算POJO呢。大家可以讨论下。
[该贴被spikeme于2009-05-16 19:21修改过]

刚才提交的时候,不小心提交了2次。
[该贴被spikeme于2009-05-16 19:19修改过]

关于TO:Transfer Object,好象是针对远程方法调用特有的一种JAVA 对象。 好象只有RMI,RMI/IIOP调用才有TO。

Some entities contain a group of attributes that are always accessed together. Accessing these attributes in a fine-grained manner through a remote interface causes network traffic and high latency, and consumes server resources unnecessarily.

A transfer object is a serializable class that groups related attributes, forming a composite value. This class is used as the return type of a remote business method. Clients receive instances of this class by calling coarse-grained business methods, and then locally access the fine-grained values within the transfer object. Fetching multiple values in one server roundtrip decreases network traffic and minimizes latency and server resource usage.

大家可以参考更详细的信息:
http://java.sun.com/blueprints/patterns/TransferObject.html