我试图通过从数据库中获取页面源来在加载时动态显示 jsf 页面上的字段。
基于一些查询,页面源将从数据库中获取并放到屏幕上,组件应该动态显示在屏幕上。
所以会有一个屏幕,但屏幕源数据将来自数据库,屏幕上的所有组件将动态显示在屏幕上。
如何做到这一点?
老实说,用 JSF 或 JSP 做这件事不太可能很容易/或高性能。
你也可以跳过这个麻烦,只需要编写一些简单的 Java 类来绑定输入并自己渲染 HTML 输出。
我在不同的项目中使用大型/树结构/可配置 UI 完成了很多“高级 UI”工作。主要使用 JSP、JSTL 和 Spring——但性能问题将是相同的。
您必须解决的另一个问题是快速加载所有组件。通常我们在 Hibernate 中使用“批量加载”查询来在单个查询中加载所有子树/子树。这非常有效。
您可以使用 Primefaces 扩展动态表单:
https://www.primefaces.org/showcase-ext/sections/dynaform/basicUsage.jsf