作者:文朋链接:http://www.zhihu.com/question/19773379/answer/18307751来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
作者:文朋链接:http://www.zhihu.com/question/19773379/answer/18307751来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
从Stack Overflow看到的答案,我觉得应该能完美回答你: 主要区分三个:JavaBean,EJB,POJO。 JavaBean JavaBean是公共Java类,但是为了编辑工具识别,需要满足至少三个条件: 有一个public默认构造器(例如无参构造器,)属性使用public 的get,set方法访问,也就是说设置成private,同时get,set方法与属性名的大小也需要对应。例如属性name,get方法就要写成,public String getName(){},N大写。需要序列化。这个是框架,工具跨平台反映状态必须的 最近看<Think in Java>,里面讲到JavaBean最初是为Java GUI的可视化编程实现的.你拖动IDE构建工具创建一个GUI 组件(如多选框),其实是工具给你创建java类,并提供将类的属性暴露出来给你修改调整,将事件监听器暴露出来.《java 编程思想(第四版)》p823-824 EJB 在企业开发中,需要可伸缩的性能和事务、安全机制,这样能保证企业系统平滑发展,而不是发展到一种规模重新更换一套软件系统。 然后有提高了协议要求,就出现了 Enterprise Bean。 EJB在javabean基础上又提了一些要求,当然更复杂了。 POJO 有个叫Josh MacKenzie人觉得,EJB太复杂了,完全没必要每次都用,所以发明了个POJO,POJO是普通的javabean,什么是普通,就是和EJB对应的。 总之,区别就是,你先判断是否满足javabean的条件,然后如果再实现一些要求,满足EJB条件就是EJB,否则就是POJO。 javabean最简单的理解是数据包.这个数据包里包含了一些信息(属性).比如名称,性别,年龄等.包含了可以给这些属性赋值和取值的方法(get和set方法).通过实例化后的赋值操作(set方法),可以在别的地方把这个实例取出来,然后通过get方法把值取出来.这就是javabean.或者叫vo.如果在方法中含有了一些逻辑.比如getName的时候,要给name前面加上公司名称.通常情况下,就叫做bo.表对应的持久化类,一般叫po.或者pojo.这些东西都可以统称为javabean.核心就是赋值(set)和取值(get).如果需要用到读写硬盘的缓存,需要网络传输,则需要序列化这个javabean.实现Serializable接口 作者:翅膀 链接:http://www.zhihu.com/question/19773379/answer/12936715 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 符合一定规范编写的Java类,不是一种技术,而是一种规范。大家针对这种规范,总结了很多开发技巧、工具函数。符合这种规范的类,可以被其它的程序员或者框架使用。 具体是什么规范,其它几位已经说得很清楚了。 简单来讲,就是实体类,用来封装数据。系统中需要用户信息,那就写个user类还封装用户的一些信息,按照一定的规范来写,这就是java bean。 最近刚刚学了jsp,对javabean,我的理解是一样的,一个jsp文件,一般有html和java语句,然而java语句在jsp中需要使用<%╱%>,为了减少编程员的工作量,会单独建立一个javabean,于是在引用该类中方法的时候就可以直接写<jsp: 不谈概念,只谈用处的话,javabean,或更精确的说是目前更流行的pojo,广泛用于分层开发中进行数据交换。 一般而言,pojo与数据表结构对应。逻辑层与数据层之间只通过 pojo进行交换。如 db.save(pojo); pojos= db.find(sql); 如此逻辑层不用去考虑复杂的sql拼接问题更关注于具体逻辑过程,从而使系统更有条理。 而表现层与逻辑层之间也可以使用pojo+模板引擎的方式进行处理。 所以个人对javabean的不精准概括就是:javabean是数据的映射。 作者:匿名用户 链接:http://www.zhihu.com/question/19773379/answer/31674023 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。转载于:https://www.cnblogs.com/xuedexin/articles/5610467.html
相关资源:数据结构—成绩单生成器