可以动态创建JSF页面吗?

问题描述:

我试图通过从数据库中获取页面源,在加载时动态显示jsf页面上的字段。可以动态创建JSF页面吗?

基于某些查询,页面源将从数据库中取出并放到屏幕上,并且组件应该动态显示在屏幕上。

所以会有一个屏幕,但屏幕源数据将来自数据库,并且屏幕上的所有组件都将动态显示在屏幕上。

这怎么办?

+0

将努力是值得的费用是多少? – skuntsel

+1

这听起来不像一个非常强大的方法。您可以使用像Spring Roo这样的技术来创建基于数据库表的Web应用程序,但我不会使用JSF来实现这一点。 – Kayaman

+0

如果您的目标是一个可配置的用户界面,那么您可以通过让数据库包含您想要的自定义字段(字段名称,类型等)的描述,然后让JSF动态地将数据呈现为组件,比数据库包含页面源。这种事情可能会非常迅速地变得非常复杂,所以我认为这对*来说实在太宽泛了。 –

说实话,在JSF或JSP中执行它不太容易或者性能不高。

您不妨跳过这个麻烦,只写一些简单的Java类来绑定输入&自己渲染HTML输出。

我已经在不同的项目中用大/树结构/可配置的UI做了很多'高级UI'工作。大多数情况下使用JSP,JSTL和Spring - 但性能问题将是相同的。

您需要解决的另一个问题是快速加载所有组件。通常,我们在Hibernate中使用“批量加载”查询来加载所有的子/子树。这非常有效。