成都手机网站建设价格,网站安全检测软件,良品铺子网络营销案例,合肥网站制作公司电话理解POCO(Plain Old CLR Object)先要理解POJO。 1、什么是POJO? POJO的名称有多种#xff0c;pure old java object 、plain ordinary java object 等。 按照Martin Fowler的解释是“Plain Old Java Object”#xff0c;从字面上翻译为“纯洁老式的java对象”#xff0c… 理解POCO(Plain Old CLR Object)先要理解POJO。 1、什么是POJO? POJO的名称有多种pure old java object 、plain ordinary java object 等。 按照Martin Fowler的解释是“Plain Old Java Object”从字面上翻译为“纯洁老式的java对象”但大家都使用“简单java对象”来称呼它。 POJO的内在含义是指那些没有从任何类继承、也没有实现任何接口更没有被其它框架侵入的java对象。 POCO的概念是从java的POJO借用而来而两者的含义是一致的不同的仅仅是使用的语言不一样。所以POCO的解释就是“Plain Old C# Object”。 2、为什么会有POJO 主要是Java的开发者被EJB的繁杂搞怕了大家经过反思又回归“纯洁老式”的JavaBean即有无参构造函数每个字段都有getter和setter的java类。 3、POJO的意义 POJO让开发者可专注于业务逻辑和脱离框架的单元测试。除此之外 由于POJO并不须要继承框架的类或实现其接口开发者能够极其灵活地搭建继承结构和建造应用。 POJO的意义就在于它的简单而灵活性因为它的简单和灵活使得POJO能够任意扩展从而胜任多个场合也就让一个模型贯穿多个层成为现实。 先写一个核心POJO然后实现业务逻辑接口和持久化接口就成了Domain Model UI需要使用时就实现数据绑定接口变成VOView Object。 4、POJO与PO、VO的区别 POJO是指简单java对象Plain Old Java Objects、pure old java object 或者 plain ordinary java object。 PO是指持久对象persistant object持久对象。 VO是指值对象或者View对象Value Object、View Object。注意本文的VO特指View Object。 持久对象实际上必须对应数据库中的entity所以和POJO有所区别。比如说POJO是由new创建由GC回收。但是持久对象是 insert数据库创建由数据库delete删除的。基本上持久对象 生命周期和数据库密切相关。另外持久对象往往只能存在一个数据库 Connection之中Connnection关闭以后持久对象就不存在了而POJO只要不被GC回收总是存在的。 由于存在诸多差别因此持久对象PO(Persistent Object)在代码上肯定和POJO不同起码PO相对于POJO会增加一些用来管理数据库entity状态的属性和方法。而ORM追求的目标就是要 PO在使用上尽量和POJO一致对于程序员来说他们可以把PO当做POJO来用而感觉不到PO的存在。 5、POJO的扩展 POJO仅包含最简单的字段属性没有多余的东西它本质上就是一个普通的JavaBean。 但是在POJO的基础上能够扩展出不同的对象。 为POJO增加了持久化的方法Insert、Update、Delete……之后POJO就变成了PO。为POJO增加了数据绑定功能之后POJO就变成了View Object即UI Model。为POJO增加业务逻辑的方法比如单据审核、转帐……之后POJO就变成了Domain Model。POJO还可以当作DTO使用。转载于:https://www.cnblogs.com/ToughGuy/p/3484197.html