java中vo
1. 請問java里VO是什麼(舉個例子,不要只說定義)
其實就是實體bean,定義屬性設置set get方法用於接收數據的
public class User{
private Integer id;//主鍵id
private String loginName;//登陸用戶名 不可重復
private String name;//名稱
private String password;//密碼
/**
*set get方法
*/
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
............
.................
....................
}
2. java中為什麼要把傳進的參數綁定成vo對象
首先,java有幾種對象(PO,VO,DAO,BO,POJO)
一、PO:persistant object 持久對象,可以看成是與資料庫中的表相映射的java對象。使用Hibernate來生成PO是不錯的選擇。
二、VO:value object值對象。通常用於業務層之間的數據傳遞,和PO一樣也是僅僅包含數據而已。但應是抽象出的業務對象,可以和表對應,也可以不,這根據業務的需要.
PO只能用在數據層,VO用在商業邏輯層和表示層。各層操作屬於該層自己的數據對象,這樣就可以降低各層之間的耦合,便於以後系統的維護和擴展。
好處:這樣可以減少大量的工作量(也就意味著減少bug,減少風險),也不需要擔心未來的維護工作!
3. java中vo.volmpl是什麼意思
表示vo裡面的成員變數volmpl,或者表示vo裡面方法volmpl,具體看一下創建vo對象的類裡面volmpl是什麼
4. Java里VO是什麼
java有幾種對象(PO,VO,DAO,BO,POJO)
一、PO:persistant object 持久對象,可以看成是與資料庫中的表相映射的java對象。使用Hibernate來生成PO是不錯的選擇。
二、VO:value object值對象。通常用於業務層之間的數據傳遞,和PO一樣也是僅僅包含數據而已。但應是抽象出的業務對象,可以和表對應,也可以不,這根據業務的需要.
PO只能用在數據層,VO用在商業邏輯層和表示層。各層操作屬於該層自己的數據對象,這樣就可以降低各層之間的耦合,便於以後系統的維護和擴展。
5. java中,pojo或者vo什麼時候要加有參或無參構造的註解
你好,很高興回答你的問題。
這兩個註解是lombok提供的。
幫助你生成無參的構造方法和所有參數的構造方法。
具體什麼時候要加這兩個註解是看你的編碼需要了。
如果你在實例化對象時不需要使用參數,只需要無參的構造方法,則不需要要使用這兩個註解。
如果你在實例化對象時需要所有參數賦值,則要使用All的那個註解。
如果使用了All的註解後,還需要使用無參的,也需要同時使用No的那個註解。
如果有幫助到你,請點擊採納。
6. java項目中VO和DTO以及Entity,各自是在什麼情況下應用的
你好,按照標准來說:
1、entity里的每一個欄位,與資料庫相對應,
2、dto里的每一個欄位,是和你前台頁面相對應,
3、VO,這是用來轉換從entity到dto,或者從dto到entity的中間的東西。
7. java項目中VO和DTO以及Entity,各自是在什麼情況下應用的
通常這三個破東西很迷惑新人,因為我們眨眼一看三個東西竟然一樣...好吧,廢話少說
按照標准來說:
entity里的每一個欄位,與資料庫相對應,這是絕大多數公司採用的叫法
dto里的每一個欄位,是和你前台頁面相對應,主要表示前端->後端,其中t表示transport,是傳輸的意思,dto就是傳輸對象,它可以用來表示前端傳遞給後端的對象,也可以表示服務與服務(後台與後台)之間的對象,有些公司把dto也叫做form,也有叫pojo,還有叫po的,
vo里的每個欄位,也是和你前台頁面相對應的,主要表示後端->前端(注意與DTO區別),其中vo中的v表示view,視圖的意思,如果你了解spring mvc的ModelAndView,那麼vo層應該很好理解
接下來我舉一個例子
-------------------------下面你讀懂了,就一下明白了-------------------
你的html頁面上有三個欄位,name,pass,age
你的資料庫表裡,有兩個欄位,name,pass(注意沒有age)
而你的dto里,就應該有下面三個(因為對應html頁面上三個欄位)
privatestringname;
privatestringpass;
privatestringage;
這個時候,你的entity里,就應該有兩個(因為對應資料庫表中的2個欄位)
privatestringname;
privatestringpass;
到了這里,好了,業務經理讓你做這樣一個業務「年齡大於20的用戶才能存入資料庫,否則不讓,入庫成功之後,需要跳轉到用戶列表頁面(比方說是個分頁查詢頁面),用戶分頁列表頁面只顯示name」
這個時候,你就要用到vo了,vo只有一個欄位,所以你會返回一個List的列表,List里裝的VO
private string name;
VO,DTO,ENTITY只是為了軟體分層,如果你不分層,也完全可以做到程序完美運行,甚至可以抬杠的說,內存開銷反而更小,但是分層是有巨大好處的,尤其是在架構上,比方說
可以對所有的DTO進行一個攔截,然後進行同意的數據校驗,而不用在每個介面(比方說Spring MVC的controller)中判斷
可以對所有返回值進行封裝,比方說如果返回值是vo結尾的類名,或者在你們公司xxx.vo包下,那麼就可以對這個返回值都包裝一層,多出code,status等欄位,方便前端接受請求
具體這些東西叫vo,還是vvvvoooo,完全取決於你們公司,主要是理解分層這個概念就好了
8. java 中什麼是VO ,簡要說明它的作用(求助大神啊)
vo層是從前台接收數據用的,比如用戶在頁面輸入用戶名,密碼等信息,通過vo層傳遞到後台,然後去驗證。主要是傳輸數據。
9. java里的VO是什麼意思
一、PO:persistant object 持久對象,可以看成是與資料庫中的表相映射的java對象。使用Hibernate來生成PO是不錯的選擇。
二、VO:value object值對象。通常用於業務層之間的數據傳遞,和PO一樣也是僅僅包含數據而已。但應是抽象出的業務對象,可以和表對應,也可以不,這根據業務的需要.
有一種觀點就是:PO只能用在數據層,VO用在商業邏輯層和表示層。各層操作屬於該層自己的數據對象,這樣就可以降低各層之間的耦合,便於以後系統的維護和擴展。如果將PO用在各個層中就相當於我們使用全局變數,我們知道在OO設計非常不贊成使用全局變數。
但是每次都得進行VO-PO的轉換,也確實很煩。我覺得有時候也可以在某個商業邏輯或者表示層使用PO,此時在這個商業邏輯的過程中PO的狀態是不發生變化的,比如顯示一條商品詳細信息的商業邏輯。
在開發過的項目中,規模都很小,我一直都把PO當VO用,因為PO確實很方便,結合Hibernate的DAO,我使用JAVA的集合對象作為值傳遞的載體,當然Struts也是我的不二之選。
我認為:在一些直觀的,簡單的,不易發生變化的,不需要涉及多個PO時,傳遞值還是使用PO好,這樣可以減少大量的工作量(也就意味著減少bug,減少風險),也不需要擔心未來的維護工作!