到底何为javabean和pojo

12-04-11 liuwuping

最近看书给彻底弄迷茫了 书生说iavabean是pojo

前面google了一番 找不到几个像样的解释

有人翻出《pojo in action》里面的说pojo不是javabean

然后我就晕了。。大家指导下 本人不才

    

banq
2012-04-11 13:02

我记得以前我解释过。

POJO是旧的JavaBean意思,那么什么是新的JavaBean,就是EJB,因为EJB2.0以前规范对JavaBean要求很多,搞得很复杂,这样大家怀念起旧的Javabean了,当时Spring推出正好符合这种要求。

现在EJB3以后,都是POJO了。

何为JavaBean应该无需解释,带有Setter/Getter这种Property属性类称为JavaBean,不过现在Scala等新语言中,主张抛弃Setter/Getter方法,不精简。

liuwuping
2012-04-11 14:32

banq 不好意思 由于我还是在校学生 没有使用EJB2.0 EJB3.0 只是使用过spring 所以难以理解新旧javebean之分 能否简单举例说明 如新的javabean

[该贴被liuwuping于2012-04-11 14:35修改过]

liuwuping
2012-04-11 14:39

能否贴下你以前的文章关于pojo 我去看看。

banq
2012-04-11 15:42

POJO以前文章见楼上“标签” POJO模型。

因为是很早以前概念,上面说得有些让人误解,画图如下:

JavaBean -->POJO ---> EJB 2 ---> Spring ---->EJB3/Spring

这是大概一个历史路径,POJO的特点是不继承或实现任何非业务类或接口,这样,我们开发的业务POJO就不依赖任何框架,而以前EJB2的Enterprise JavaBean是指定JavaBean需要继承实现EJBHome等用于分布式的接口。

POJO后来延伸为一种非侵入性代名词,也就是说:选择技术框架或开发框架,不能让别人基于你框架开发的JavaBean依赖你的框架,要实现这种目的,需要通过DI依赖注入 AOP等等技术才能实现。

2Go 1 2 下一页