關于vovi手機官網(wǎng),vo這個問題很多朋友還不知道,今天小六來為大家解答以上的問題,現(xiàn)在讓我們一起來看看吧!
1、一、PO:persistant object 持久對象,可以看成是與數(shù)據(jù)庫中的表相映射的java對象。
2、使用Hibernate來生成PO是不錯的選擇。
3、 二、VO:value object值對象。
4、通常用于業(yè)務層之間的數(shù)據(jù)傳遞,和PO一樣也是僅僅包含數(shù)據(jù)而已。
5、但應是抽象出的業(yè)務對象,可以和表對應,也可以不,這根據(jù)業(yè)務的需要. 有一種觀點就是:PO只能用在數(shù)據(jù)層,VO用在商業(yè)邏輯層和表示層。
6、各層操作屬于該層自己的數(shù)據(jù)對象,這樣就可以降低各層之間的耦合,便于以后系統(tǒng)的維護和擴展。
7、如果將PO用在各個層中就相當于我們使用全局變量,我們知道在OO設計非常不贊成使用全局變量。
8、 但是每次都得進行VO-PO的轉換,也確實很煩。
9、我覺得有時候也可以在某個商業(yè)邏輯或者表示層使用PO,此時在這個商業(yè)邏輯的過程中PO的狀態(tài)是不發(fā)生變化的,比如顯示一條商品詳細信息的商業(yè)邏輯。
10、 在開發(fā)過的項目中,規(guī)模都很小,我一直都把PO當VO用,因為PO確實很方便,結合Hibernate的DAO,我使用JAVA的集合對象作為值傳遞的載體,當然Struts也是我的不二之選。
11、 我認為:在一些直觀的,簡單的,不易發(fā)生變化的,不需要涉及多個PO時,傳遞值還是使用PO好,這樣可以減少大量的工作量(也就意味著減少bug,減少風險),也不需要擔心未來的維護工作!。
本文分享完畢,希望對大家有所幫助。
標簽:
免責聲明:本文由用戶上傳,如有侵權請聯(lián)系刪除!