實(shí)戰(zhàn)講解MybatisPlus DO PO BO DTO VO 數(shù)據(jù)模型及其流轉(zhuǎn) 附視頻

一酌伊、序言

在使用MybatisPlus作為DAO層訪問(wèn)數(shù)據(jù)庫(kù)日益普及的今天璃俗,相應(yīng)數(shù)據(jù)模型的理解變得越發(fā)的重要涌乳。如何應(yīng)對(duì)企業(yè)級(jí)復(fù)雜多變的場(chǎng)景、如何將代碼書(shū)寫(xiě)的更為整潔间螟,這些都是廣大技術(shù)朋友需要思考的問(wèn)題。

本文將從實(shí)戰(zhàn)的角度帶來(lái)基于MybatisPlus作為DAO層訪問(wèn)數(shù)據(jù)庫(kù)的前提下损肛,解釋各種數(shù)據(jù)模型的內(nèi)涵以及數(shù)據(jù)模型之間的流轉(zhuǎn)問(wèn)題厢破。本文有視頻版,傳送門(mén)

紙上得來(lái)終覺(jué)淺治拿,深刻理解各種概念的內(nèi)涵只有通過(guò)實(shí)戰(zhàn)編碼摩泪,才能理解其概念的內(nèi)涵。

二劫谅、概念

1见坑、DO

DO稱為領(lǐng)域模型(Domain Object)嚷掠,此模型中字段屬性與數(shù)據(jù)庫(kù)字段具有某種一一對(duì)應(yīng)的聯(lián)系,一個(gè)不多一個(gè)不少荞驴,目的是屏蔽數(shù)據(jù)庫(kù)不皆,透明的進(jìn)行數(shù)據(jù)庫(kù)編程。

上述一一對(duì)應(yīng)的聯(lián)系通常是指下劃線轉(zhuǎn)駝峰等熊楼。

DO是使用MybatisPlus最為重要的數(shù)據(jù)模型霹娄,此模型甚至不需要顯示的表明便能輕易的識(shí)別。

2鲫骗、PO

一般來(lái)講犬耻,在做數(shù)據(jù)加工的過(guò)程中,單個(gè)DO的屬性過(guò)多执泰,實(shí)際上用不上那么多屬性枕磁,此時(shí)需要一個(gè)模型來(lái)做中間橋接工作。PO便應(yīng)運(yùn)而生坦胶,也是POJO大家庭的一部分透典。PO可繼承DO,也可以僅包含DO中部分屬性顿苇。

PO能夠完成數(shù)據(jù)字段屬性過(guò)濾的操作峭咒。

3、BO

如果PO在處理多個(gè)DO時(shí)纪岁,情況比較復(fù)雜凑队,那么可引入BO輔助完成上述操作。

4幔翰、VO

VO稱之為視圖對(duì)象(View Object)漩氨,一般來(lái)說(shuō)是指控制器返回給前端的最終的模型。不管是顯示的指明遗增,還是隱士的返回叫惊,從控制器返回的實(shí)體模型均可理解為VO,與實(shí)體類(lèi)命名無(wú)關(guān)做修。

5霍狰、DTO

DTO成為數(shù)據(jù)傳輸模型,顧名思義饰及,是作為傳輸數(shù)據(jù)使用的蔗坯。DTO廣泛應(yīng)用于子系統(tǒng)與子系統(tǒng)之間,不直接返回給前端燎含,DTO與VO的根本區(qū)別是VO是單向的宾濒,由控制器返回給前端即可;DTO是雙向的屏箍,既要能夠轉(zhuǎn)化為JSON數(shù)據(jù)绘梦,還要能夠解析為具體的DTO實(shí)體橘忱。

還有一種解釋是DTO作為控制器接收參數(shù)的實(shí)體,著實(shí)令人費(fèi)解:第一谚咬,API接口本著小而輕的原則鹦付,接口不會(huì)太復(fù)雜,因此使用普通參數(shù)或者借助DO完全能夠滿足大多數(shù)需求择卦。

少數(shù)重量提交接口敲长,特殊問(wèn)題特殊處理。

如果是為了參數(shù)隱藏而在控制器接收參數(shù)使用DTO秉继,不在討論范圍之內(nèi)祈噪。

在分析實(shí)體類(lèi)數(shù)據(jù)模型流轉(zhuǎn)問(wèn)題,一定要考慮少數(shù)情況與多數(shù)情況的問(wèn)題尚辑,這也是理論與實(shí)戰(zhàn)的本質(zhì)差別辑鲤。類(lèi)似于DDD,將系統(tǒng)拆分過(guò)細(xì)杠茬,看起來(lái)架構(gòu)很清楚月褥,實(shí)則增加開(kāi)發(fā)難度。

三瓢喉、小結(jié)

實(shí)際開(kāi)發(fā)中宁赤,概念是死的,編程是活的栓票。引入分層模型本質(zhì)上是為了使數(shù)據(jù)才加工過(guò)程中層次清晰决左,方便代碼復(fù)用,切不可為了分層而分層走贪,一定要有實(shí)際內(nèi)涵佛猛。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市坠狡,隨后出現(xiàn)的幾起案子继找,更是在濱河造成了極大的恐慌,老刑警劉巖逃沿,帶你破解...
    沈念sama閱讀 211,194評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件码荔,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡感挥,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門(mén)越败,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)触幼,“玉大人,你說(shuō)我怎么就攤上這事究飞≈们” “怎么了堂鲤?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,780評(píng)論 0 346
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)媒峡。 經(jīng)常有香客問(wèn)我瘟栖,道長(zhǎng),這世上最難降的妖魔是什么谅阿? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,388評(píng)論 1 283
  • 正文 為了忘掉前任半哟,我火速辦了婚禮,結(jié)果婚禮上签餐,老公的妹妹穿的比我還像新娘寓涨。我一直安慰自己,他們只是感情好氯檐,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布戒良。 她就那樣靜靜地躺著,像睡著了一般冠摄。 火紅的嫁衣襯著肌膚如雪糯崎。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,764評(píng)論 1 290
  • 那天河泳,我揣著相機(jī)與錄音沃呢,去河邊找鬼。 笑死乔询,一個(gè)胖子當(dāng)著我的面吹牛樟插,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播竿刁,決...
    沈念sama閱讀 38,907評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼黄锤,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了食拜?” 一聲冷哼從身側(cè)響起鸵熟,我...
    開(kāi)封第一講書(shū)人閱讀 37,679評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎负甸,沒(méi)想到半個(gè)月后流强,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,122評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡呻待,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評(píng)論 2 325
  • 正文 我和宋清朗相戀三年打月,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蚕捉。...
    茶點(diǎn)故事閱讀 38,605評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡奏篙,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情秘通,我是刑警寧澤为严,帶...
    沈念sama閱讀 34,270評(píng)論 4 329
  • 正文 年R本政府宣布,位于F島的核電站肺稀,受9級(jí)特大地震影響第股,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜话原,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評(píng)論 3 312
  • 文/蒙蒙 一夕吻、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧稿静,春花似錦梭冠、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,734評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至悬钳,卻和暖如春盐捷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背默勾。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,961評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工碉渡, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人母剥。 一個(gè)月前我還...
    沈念sama閱讀 46,297評(píng)論 2 360
  • 正文 我出身青樓滞诺,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親环疼。 傳聞我的和親對(duì)象是個(gè)殘疾皇子习霹,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容