Struts 2 OGNL s:iterator vs JSTL c:forEach performance

时间:2011-09-15 00:15:11

标签: jsp struts2 jstl ognl

我最近一直在构建一些相当动态的Web应用程序,它们严重依赖于数据库(JPA)支持的配置。这些应用程序是多用户,多帐户系统,最终用户可以在其中基于JPA实体创建自定义表单。

我注意到,随着我的JSP页面变得越来越复杂,我的性能和加载时间都受到了冲击。最初我曾认为这是导致我瓶颈的数据层,但是今天我突发奇想地替换了几个包含使用基于JSTL的迭代方案由struts迭代的对象列表即时创建的页面。我被吹走了,我的页面加载时间从大约10秒到大约一秒钟。随着列表大小的增加,JSP页面的渲染时间大幅增加(使用struts2 OGNL迭代)。

在我的struts配置中,我关闭了开发模式,我使用的是一个简单的主题集,没什么特别的。我正在考虑重写我的一些迭代重页以使用JSTL而不是struts,但我想我会问周围,看看我是否遗漏了某些东西,或者是否有人遇到过类似的情况。

1 个答案:

答案 0 :(得分:5)

OGNL很慢;较新的版本将寻求一些性能增强。

IMO,其中S2和JSTL标签功能重叠,与S1一样,我倾向于JSTL。

在不了解您的实际演示图层的情况下,您已经采取了哪些措施{@ 3}},或者有关主题模板的详细信息,更难以说明。