T:savestate对页面加载时间的影响



最近我遇到了一个jsp页面,其中我看到了

  1. <t:savestate>标签对同一豆子使用两次。
  2. 还使用了 bean 的许多 <t:savestate> 标签和许多变量,这些变量不是该页面功能所必需的,但仍存在于页面上,只是过时了。

我的问题是<t:savestate>上述两种情况对性能/页面加载时间有什么影响吗?

> t:savestate的作用是通过将数据保存在视图范围内,方法是将值表达式生成的值存储在组件本身中。因此,虽然它确实对性能有一些影响,但它主要取决于对象的大小(和数量)。

如果我正确理解了它的实现(源代码在这里),它将保存你传递的每个值的副本,除非你传递的值是 StateHolder 的实例(如几个 JSF 组件,如输入、数据表等)。

因此,您可能会很好地删除不必要的标签,以清理内容。但是,如果您主要关心的是性能,我不知道它是否会产生太大差异,出于性能原因,您应该在开始进行更改之前进行分析。

另外,请务必注意重复的t:saveState标签是否位于同一h:form内。如果它们在不同的h:form,则两个地方都可能需要它们。

相关内容

  • 没有找到相关文章