java java項目中VO和DTO以及Entity,各自是在什么情況下應(yīng)用的?
java項目中VO和DTO以及Entity,各自是在什么情況下應(yīng)用的?您好,根據(jù)標(biāo)準(zhǔn):1。實體中的每個字段都對應(yīng)于數(shù)據(jù)庫,2。dto中的每個字段都對應(yīng)于前景頁,3。VO,用于從實體到dto或從dto到
java項目中VO和DTO以及Entity,各自是在什么情況下應(yīng)用的?
您好,根據(jù)標(biāo)準(zhǔn):
1。實體中的每個字段都對應(yīng)于數(shù)據(jù)庫,
2。dto中的每個字段都對應(yīng)于前景頁,
3。VO,用于從實體到dto或從dto到實體的轉(zhuǎn)換。
例如:
您的HTML頁面上有三個字段,name,pass,age
您的數(shù)據(jù)庫表中有兩個字段name,pass
在您的dto中,應(yīng)該有以下三個字段(因為它們對應(yīng)于HTML頁面上的三個字段)
private string name;
private string pass
private string此時,實體中應(yīng)該有兩個字段(因為它們對應(yīng)于數(shù)據(jù)庫表中的兩個字段)
private string name;
private string[pass
在這里。好吧,業(yè)務(wù)經(jīng)理讓你做這樣的生意。只有20歲以上的人才可以存儲在數(shù)據(jù)庫中
]此時,您需要使用VO
您需要先從頁面中獲取dto,然后判斷dto中的年齡是否大于20歲。如果大于20,則取出
name并傳入dto,放入VO中,然后交給不懂name和傳入VO Entity原始印章的人,然后根據(jù)
Entity的值,PS、VO和Entity中的字段應(yīng)該相同。VO只是從實體到dto,或者從dto到實體的中間過程。如果沒有這樣的流程,您仍然可以添加、刪除、修改和查詢。這是基于具體的公司。
java中為什么要使用vo類而不使用po直接傳值到前端,除了解耦還有什么原因?
1。一般來說,前端只需要一些必要的字段,VO可以根據(jù)需要定制,底層的其他字段可以去掉
2。前端鍵的名稱也會有要求,方便前端開發(fā)。VO可以很方便的重新映射原來的域名
一個很好的問題。我是一個web應(yīng)用程序架構(gòu)師,多年來一直致力于回答這個問題。歡迎跟我來了解更多。
后端提供接口文檔為時已晚,這是合理和不合理的。根據(jù)具體情況,總有解決辦法。讓我談?wù)勎业挠^點。
不合理:成熟的技術(shù)團隊重視功能設(shè)計,在編寫代碼之前有完整的技術(shù)文檔和功能定義。即使在TDD測試驅(qū)動的開發(fā)模式下,測試數(shù)據(jù)已經(jīng)準(zhǔn)備好了,那么接口邏輯就已經(jīng)確定了接口文檔是否編寫好了,理清它們是很自然的。
-第一,主觀原因。原因是多方面的,比如趕進度,沒有時間,不懶得寫,甚至在開發(fā)前沒有仔細設(shè)計,在做的時候也有變化。真的沒有好辦法。
-客觀原因:需求在變化,功能在變化,接口也在變化。所以,如果你寫了一個文件,它的自然更新和維護?天哪?
有解決方案嗎?建議嘗試:[1]swagger接口文檔,將文檔集成到代碼中,集成維護文檔和修改代碼,在修改代碼邏輯的同時方便修改文檔描述。
2、郵遞員界面測試工具,導(dǎo)入導(dǎo)出JSON文件,高效的團隊合作。Postman支持各種請求方法和配置環(huán)境變量,對返回的結(jié)果進行測試和驗證,支持批量自動操作,可與自動構(gòu)建系統(tǒng)集成。