按照Martin Fowler的解釋是“Plain Old Java Obj " /> 中国国产高清一级毛片,欧美三级 欧美一级,男女免费视频网站

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

理解POCO

  理解POCO(Plain Old CLR Object)先要理解POJO。

  1、什么是POJO?

  POJO的名稱有多種,pure old Java object 、plain ordinary Java object 等。
  按照Martin Fowler的解釋是“Plain Old Java Object”,從字面上翻譯為“純潔老式的Java對(duì)象”,但大家都使用“簡(jiǎn)單Java對(duì)象”來(lái)稱呼它。

  POJO的內(nèi)在含義是指那些沒(méi)有從任何類繼承、也沒(méi)有實(shí)現(xiàn)任何接口,更沒(méi)有被其它框架侵入的Java對(duì)象。
  POCO的概念是從Java的POJO借用而來(lái),而兩者的含義是一致的,不同的僅僅是使用的語(yǔ)言不一樣。所以POCO的解釋就是“Plain Old C# Object”。

  2、為什么會(huì)有POJO?

  主要是Java的開(kāi)發(fā)者被EJB的繁雜搞怕了,大家經(jīng)過(guò)反思,又回歸“純潔老式”的JavaBean,即有無(wú)參構(gòu)造函數(shù),每個(gè)字段都有g(shù)etter和setter的Java類。

  3、POJO的意義

  POJO讓開(kāi)發(fā)者可專注于業(yè)務(wù)邏輯和脫離框架的單元測(cè)試。除此之外, 由于POJO并不須要繼承框架的類或?qū)崿F(xiàn)其接口,開(kāi)發(fā)者能夠極其靈活地搭建繼承結(jié)構(gòu)和建造應(yīng)用
  POJO的意義就在于它的簡(jiǎn)單而靈活性,因?yàn)樗暮?jiǎn)單和靈活,使得POJO能夠任意擴(kuò)展,從而勝任多個(gè)場(chǎng)合,也就讓一個(gè)模型貫穿多個(gè)層成為現(xiàn)實(shí)。
  先寫(xiě)一個(gè)核心POJO,然后實(shí)現(xiàn)業(yè)務(wù)邏輯接口和持久化接口,就成了Domain Model; UI需要使用時(shí),就實(shí)現(xiàn)數(shù)據(jù)綁定接口,變成VO(View Object)。

  4、POJO與PO、VO的區(qū)別
  POJO是指簡(jiǎn)單Java對(duì)象(Plain Old Java Objects、pure old Java object 或者 plain ordinary Java object)。
  PO是指持久對(duì)象(persistant object持久對(duì)象)。
  VO是指值對(duì)象或者View對(duì)象(Value Object、View Object)。注意,本文的VO特指View Object。
  持久對(duì)象實(shí)際上必須對(duì)應(yīng)數(shù)據(jù)庫(kù)中的entity,所以和POJO有所區(qū)別。比如說(shuō)POJO是由new創(chuàng)建,由GC回收。但是持久對(duì)象是 insert數(shù)據(jù)庫(kù)創(chuàng)建,由數(shù)據(jù)庫(kù)delete刪除的。基本上持久對(duì)象   生命周期和數(shù)據(jù)庫(kù)密切相關(guān)。另外持久對(duì)象往往只能存在一個(gè)數(shù)據(jù)庫(kù) Connection之中,Connnection關(guān)閉以后,持久對(duì)象就不存在了,而POJO只要不被GC回收,總是存在的。
  由于存在諸多差別,因此持久對(duì)象PO(Persistent Object)在代碼上肯定和POJO不同,起碼PO相對(duì)于POJO會(huì)增加一些用來(lái)管理數(shù)據(jù)庫(kù)entity狀態(tài)的屬性和方法。而ORM追求的目標(biāo)就是要 PO在使用上盡量和POJO一致,對(duì)于程序員來(lái)說(shuō),他們可以把PO當(dāng)做POJO來(lái)用,而感覺(jué)不到PO的存在。

  5、POJO的擴(kuò)展

  POJO僅包含最簡(jiǎn)單的字段屬性,沒(méi)有多余的東西,它本質(zhì)上就是一個(gè)普通的JavaBean。
    但是在POJO的基礎(chǔ)上,能夠擴(kuò)展出不同的對(duì)象。

  • 為POJO增加了持久化的方法(Insert、Update、Delete……)之后,POJO就變成了PO。
  • 為POJO增加了數(shù)據(jù)綁定功能之后,POJO就變成了View Object,即UI Model。
  • 為POJO增加業(yè)務(wù)邏輯的方法(比如單據(jù)審核、轉(zhuǎn)帳……)之后,POJO就變成了Domain Model。
  • POJO還可以當(dāng)作DTO使用。

it知識(shí)庫(kù)理解POCO,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 99热在这里只有免费精品 | 香蕉人人超人人超免费看视频 | 亚洲国产香蕉视频欧美 | 久久这里有精品视频任我鲁 | 中文字幕在线观看一区二区三区 | 国产福利微拍精品一区二区 | 久久丝袜精品中文字幕 | 国色天香精品亚洲精品 | 国产高清免费的视频 | 一区二区3区免费视频 | 天天综合日日噜噜噜 | 九九99久久精品午夜剧场免费 | 亚洲狠狠狠一区二区三区 | 精品福利国产 | 亚洲综合色一区二区三区另类 | 玖玖国产精品视频 | 午夜欧美性视频在线播放 | 涩综合| 久久精品国产一区二区三区肥胖 | 国内精品久久久久久久星辰影视 | 伊人久久综合谁合综合久久 | 色婷婷中文字幕在线一区天堂 | 国产精品久久久久免费视频 | 亚洲第一视频在线播放 | 亚洲国产精品一区二区三区 | 久久在精品线影院精品国产 | 天天综合日日噜噜噜 | 好吊操这里只有精品 | 精品国产高清不卡毛片 | 欧亚激情偷乱人伦小说视频 | 免费精品国产自产拍在 | 99热在这里只有免费精品 | 91不卡在线精品国产 | 一级午夜| 免费观看色视频 | 伊人热人久久中文字幕 | 国产一级精品高清一级毛片 | 国产成人福利精品视频 | 国产精品亚洲四区在线观看 | 国产精品久久久久久久y | 丁香六月五月婷婷 |