2013-08-22 187 views
1

有人可以舉例說明「持久性模型」應該從「視圖模型」中分離出來嗎?爲什麼?持久性模型與視圖模型

持久化模型:

@Entity 
public class Employee { 

    @Id 
    private int id; 

    // Some other stuff 

} 

視圖模型:

public class EmployeeModel { 

    private int id; 

    // Some other stuff 

} 

而且,他們不應該被分開嗎?

回答

4

不應該分開的地方:當它們完全匹配時,就像在你的例子中一樣。

他們應該分開的地方:當他們不匹配時。例如,假設你想顯示包含一個表,對於每一行:

  • 僱員名
  • 他的部門的名稱
  • 的他參與

項目數量這與任何持久性模型實體都不匹配,因爲在持久性模型中,您將擁有一個Employee,具有與Department關聯的ManyToOne關聯以及與Project關聯的ManyToMany關聯。要加載表中顯示的數據,您將使用即席查詢,該查詢將使用連接從這三個實體加載所需的數據。