我試圖通過從數據庫中獲取頁面源,在加載時動態顯示jsf頁面上的字段。可以動態創建JSF頁面嗎?
基於某些查詢,頁面源將從數據庫中取出並放到屏幕上,並且組件應該動態顯示在屏幕上。
所以會有一個屏幕,但屏幕源數據將來自數據庫,並且屏幕上的所有組件都將動態顯示在屏幕上。
這怎麼辦?
我試圖通過從數據庫中獲取頁面源,在加載時動態顯示jsf頁面上的字段。可以動態創建JSF頁面嗎?
基於某些查詢,頁面源將從數據庫中取出並放到屏幕上,並且組件應該動態顯示在屏幕上。
所以會有一個屏幕,但屏幕源數據將來自數據庫,並且屏幕上的所有組件都將動態顯示在屏幕上。
這怎麼辦?
說實話,在JSF或JSP中執行它不太容易或者性能不高。
您不妨跳過這個麻煩,只寫一些簡單的Java類來綁定輸入&自己渲染HTML輸出。
我已經在不同的項目中用大/樹結構/可配置的UI做了很多'高級UI'工作。大多數情況下使用JSP,JSTL和Spring - 但性能問題將是相同的。
您需要解決的另一個問題是快速加載所有組件。通常,我們在Hibernate中使用「批量加載」查詢來加載所有的子/子樹。這非常有效。
您可以使用Primefaces擴展動態形式:
http://fractalsoft.net/primeext-showcase-mojarra/sections/dynaform/basicUsage.jsf
將努力是值得的費用是多少? – skuntsel
這聽起來不像一個非常強大的方法。您可以使用像Spring Roo這樣的技術來創建基於數據庫表的Web應用程序,但我不會使用JSF來實現這一點。 – Kayaman
如果您的目標是一個可配置的用戶界面,那麼您可以通過讓數據庫包含您想要的自定義字段(字段名稱,類型等)的描述,然後讓JSF動態地將數據呈現爲組件,比數據庫包含頁面源。這種事情可能會非常迅速地變得非常複雜,所以我認爲這對StackOverflow來說實在太寬泛了。 –