VO,DTO,BO,POJO,PO的概念介绍
po:
1.po:popersistent object 持久對象,持久對象的意思指的是可以從內(nèi)存中存儲到關(guān)系型數(shù)據(jù)庫中。
2.因此一個(gè)po對應(yīng)的數(shù)據(jù)庫中的每一條記錄。
pojo:
1. pojo:plain ordinary java object 無規(guī)則簡單java對象,對應(yīng)的是我們代碼中的實(shí)體類。
2.pojo持久化之后就是po了,可以看作一個(gè)中間對象,因?yàn)?pojo可以轉(zhuǎn)變?yōu)関o,dto,和bo。
po和pojo的區(qū)別:
1.po不對數(shù)據(jù)庫進(jìn)行操作,而pojo可以對數(shù)據(jù)庫表中的記錄進(jìn)行增刪操作。
2.po對應(yīng)數(shù)據(jù)庫中的entity,由數(shù)據(jù)庫中insert產(chǎn)生,delete 消亡的,是和數(shù)據(jù)庫緊密聯(lián)系的,如果Connection數(shù)據(jù)庫的連接,po也不復(fù)存在了,而pojo則是程序中new出來的,由GC回收,
bo:
1.bo:business object 業(yè)務(wù)對象 業(yè)務(wù)對象主要作用是將業(yè)務(wù)邏輯封裝成一個(gè)對象,這個(gè)對象可以是一個(gè)對象或者是多個(gè)對象, 比如一個(gè)學(xué)校,有學(xué)生,有老師,有清潔工等。我們可以把學(xué)生當(dāng)作一個(gè)po,老師當(dāng)作一個(gè)po,清潔工當(dāng)作一個(gè)po,然后可以建立一個(gè)bo去包含這些po,這樣處理業(yè)務(wù)邏輯的時(shí)候,就可以針對bo去處理了。
vo:
1.vo:value object 值對象 / view object 表現(xiàn)層對象 服務(wù)器向客戶端展示的數(shù)據(jù)對象,因?yàn)槲覀冊O(shè)計(jì)數(shù)據(jù)庫的時(shí)候,可能會有一些保留字段,但是這些保留字段對于數(shù)據(jù)展示并沒有作用,所以我們就可以創(chuàng)建一個(gè)vo來向視圖層輸出頁面要展示的字段內(nèi)容,這樣不僅減少了前端的數(shù)據(jù)展示的壓力,并且能隱藏我們的數(shù)據(jù)庫設(shè)計(jì),更加安全。
dto:
1.dto:Data Transfer Object 數(shù)據(jù)傳輸對象,主要是用于服務(wù)端和客戶端的輸入和輸出數(shù)據(jù)的對象,當(dāng)客戶端傳輸數(shù)據(jù)到服務(wù)端時(shí),controller層接收到視圖層的傳輸數(shù)據(jù)(vo),而controller層會將這些數(shù)據(jù)進(jìn)行適當(dāng)?shù)奶砑踊蛘邉h除變?yōu)閐to,然后將dto往service層傳輸,當(dāng)數(shù)據(jù)從服務(wù)端向客戶端傳輸?shù)臅r(shí)候,又會將dto轉(zhuǎn)為vo,然后將vo展示到視圖層
總結(jié)
以上是生活随笔為你收集整理的VO,DTO,BO,POJO,PO的概念介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python秒表游戏代码_python编
- 下一篇: 微信小程序云函数使用教程【超详细】