您好,登錄后才能下訂單哦!
這篇文章主要介紹了使用DTO怎么實現(xiàn) service與controller的值傳遞,此處給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考價值,需要的朋友可以參考下:
DTO( Data Transfer Object):
數(shù)據(jù)傳輸對象,Service 或 Manager 向外傳輸?shù)膶ο蟆?/p>
BO:business object 業(yè)務(wù)對象。主要作用是把業(yè)務(wù)邏輯封裝為一個對象。這個對象可以包括一個或多個其它的對象。比如一個簡歷,有教育經(jīng)歷、工作經(jīng)歷、社會關(guān)系等等。我們可以把教育經(jīng)歷對應(yīng)一個 PO,工作經(jīng)歷對應(yīng)一個 PO,社會關(guān)系對應(yīng)一個 PO。建立一個對應(yīng)簡歷的 BO 對象處理簡歷,每個 BO 包含這些 PO。這樣處理業(yè)務(wù)邏輯時,我們就可以針對 BO 去處理。
VO( View Object):
顯示層對象,通常是 Web 向模板渲染引擎層傳輸?shù)膶ο蟆?/p>
POJO( Plain Ordinary Java Object):
在阿里巴巴編程手冊中, POJO 專指只有setter/getter/toString的簡單類,包括DO/DTO/BO/VO等。
/** * 封裝執(zhí)行后結(jié)果 */ public class PersonInfoExecution { // 結(jié)果狀態(tài) private int state; // 狀態(tài)標(biāo)識 private String stateInfo; // 店鋪數(shù)量 private int count; // 操作的personInfo(增刪改店鋪的時候用) private PersonInfo personInfo; // 獲取的personInfo列表(查詢店鋪列表的時候用) private List<PersonInfo> personInfoList; public PersonInfoExecution() { } // 失敗的構(gòu)造器 public PersonInfoExecution(PersonInfoStateEnum stateEnum) { this.state = stateEnum.getState(); this.stateInfo = stateEnum.getStateInfo(); } // 成功的構(gòu)造器 public PersonInfoExecution(PersonInfoStateEnum stateEnum, PersonInfo personInfo) { this.state = stateEnum.getState(); this.stateInfo = stateEnum.getStateInfo(); this.personInfo = personInfo; } // 成功的構(gòu)造器 public PersonInfoExecution(PersonInfoStateEnum stateEnum, List<PersonInfo> personInfoList) { this.state = stateEnum.getState(); this.stateInfo = stateEnum.getStateInfo(); this.personInfoList = personInfoList; } //get set...... }
補充:springBoot框架中幾個層(dto、dao、service、controller)之間的關(guān)系
controller層-----> service層(接口—>接口實現(xiàn)類) -----> dao層的.mapper文件 -----> 和mapper層里的.xml文件對應(yīng)
Model層 是數(shù)據(jù)層:
TableName是對數(shù)據(jù)表實體的映射;
Criteria傳輸前臺數(shù)據(jù)
DTO 傳輸類間數(shù)據(jù)
Mapper層 放置SQL查詢XML文件
Dao層 相當(dāng)于XML文件的抽象類
到此這篇關(guān)于使用DTO怎么實現(xiàn) service與controller的值傳遞的文章就介紹到這了,更多相關(guān){**}的內(nèi)容請搜索億速云以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持億速云!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。