寻求提高JSP性能

时间:2015-02-19 09:37:01

标签: java performance jsp servlets jsp-tags

我有一个用servlet和JSP构建的项目。在该项目中,一个具有300个循环的jsp显示单个下拉列表。在那个JSP中,min下拉是100.但是依赖于数据它可能是1000.如果它100对我来说没问题但是如果它是1000则jsp加载花费时间3到4分钟。

任何人都可以帮我找到解决方法。我希望这个Jsp只能加载最多1分钟。不止于此。

1 个答案:

答案 0 :(得分:0)

如果您有一个包含1000个值的select下拉列表,则必须遍历列表/数组并在JSP中生成option个元素。有几种方法可以做到这一点,例如使用c:forEach,但最终运行for循环不能避免。

查看是否允许用户键入几个字符,然后使用AJAX加载过滤后的结果。

此外,从简单的性能角度来看,如果您正在进行String分割等操作,您可以看看是否可以避免这些操作。此外,使用像ArrayList(而不是Vector)这样的非线程安全集合可能有助于提高性能。

要提高性能,您可以尝试在单独的测试程序中执行该代码段并对其进行优化。

如果你继承了代码,其中有人做了一些可怕的事情,例如在JSP中循环使用JDBC ResultSet,你可能需要做出决定,看看你是否可以做大量的代码重构来清理页。