2016.5.26 随笔————JavaBean、POJO、EJB的概念
大概知道这些指的是什么,但是比较模糊,所以总结一下:
1. 发展历程
java1996年发布,当年12月就发布了javabean 1.00-A
作用是:通过统一的规范可以设置对象的值(get,set的方法),这是最初的java bean。
实际企业开发中,需要实现事务、安全、分布式,那么javabean就不好用了。
Sun公司开始往里面堆功能,这里的javabean就复杂为EJB
所以EJB 英文为 Enterprise java bean
EJB功能强大,但是太重了。
此时出现DI(依赖注入),AOP(面向切面)技术
通过简单的java bean 也能完成EJB的事情,这里的java bean 简化为POJO。
spring诞生了
2. java bean 需要满足的条件
1> 所有属性 为private
2> 提供public默认构造方法(如无参构造器)
3> getter setter方法 (外部访问 该javabean属性 的唯一方法)
4> 实现序列化 即 serializable 接口。(实现框架、工具跨平台反映状态必须的)
3. EJB POJO javabean 的关系
EJB相当于是javabean的复杂化,需要可伸缩的性能和事务、安全机制等等要求。
POJO(Plain Ordinary Java Object)
则是最简单的javabean 属性+getset方法
4. 一些相关名词概念
PO(Plain Object):用于持久化时(例如保存到数据库或者缓存)
VO(Value Object): 用于前台展示使用(如放在JSP中解析 或者 给前台传递数据)
DTO(data transfer object):用于接口互相调用返回,数据传输(例如很多接口调用返回值或者消息队列内容)
5. 个人理解
POJO是最简单的javabean,private 的属性和 public 的get set方法,不继承任何其他类
EJB 是javabean的延伸, javabean是封装的, EJB使得javabean中需要实现更多的功能
javabean: 一个统称 最简需要满足 那4个条件