我們目前有一個Java EE系統,我們使用JPA映射到我們的數據庫。這是一個相當完善的系統,有大約20個實體。JPA和表視圖。可以做到嗎?
我們現在已被命令使用視圖的一切。例如:如果我們有一個名爲PERMISSION的表,那麼我們還需要一個名爲PERMISSION_VIEW的視圖。基本上我們需要對每個表執行此操作,而我們的應用程序只能通過查詢視圖來訪問數據。
現在我們所有的實體bean是這樣的:
@Entity
@Table(name = "PERMISSION")
@NamedQueries({
@NamedQuery(name = "Permission.findByPK", query = "SELECT p FROM Permission p WHERE p.dpNum = :dpNumber"),
@NamedQuery(name = "Permission.deleteAll", query = "DELETE FROM Permission") })
public class Permission implements Serializable {
}
- 首先,是如何,如果你只允許使用視圖可以更新表。物化視圖可以爲此工作嗎?
- 其次,如果我們只能使用視圖,需要多少重寫?例如。對於每個entiry,我們將需要編寫@Table(name =「PERMISSION_VIEW」)來描述實體,但是在做更新時它需要將它做到PERMISSION表。你究竟如何將它整合到一個實體bean中呢?
請原諒問題,但爲什麼有人要這樣做呢? – kostja
我在一個大型組織工作,我們有一些數據庫指導原則,這些指導原則是爲了安全和管理目的,我們需要使用視圖。 –
您的應用程序顯然需要對數據庫的寫入權限。如果您的視圖包含與表格相同的數據,我不會看到提供的安全性或其他優勢。 –