<c:import>和<jsp:include>在性能方面哪个更好?

27

我正在使用import JSTL标签,使用jsp:include是否更好?

<c:choose>      
    <c:when test="${item.id=='masters'}">    
        <c:import url="/newclickmenu/mastermenuitems.jsp"></c:import>    
    </c:when>

    <c:when test="${item.id=='sales'}">   
        <c:import url="/newclickmenu/salesmenuitems.jsp"></c:import>   
    </c:when>
</c:choose>     
2个回答

36

<c:import>功能比<jsp:include>更灵活且增强了功能。

  • <c:import>允许您指定其他Web应用程序、上下文以及Web服务器中的内容,这使得您更加灵活。

  • 然而,请记住,静态包含始终比动态包含快;这意味着<%@ include file="" %><jsp:include><c:import>都要快。

  • 从技术上讲,只有在需要其功能或灵活性时才应使用<c:import>,性能提升很小。

  • 一些人可能会认为,如果您不需要<c:import>,那么实现它是一个不好的做法,因为它比<jsp:include>更加沉重。


<c:import>能否访问WEB-INF文件夹中的页面? - Filip
是的,就像我的上面的代码一样,我正在从我的war文件夹中导入它们。 - M.S.Naidu
@M.S.Naidu 抱歉,因为编辑;我觉得这太多了,不适合放在评论中。 - Pfft

1
c:import 的一个重要优势是它可以从当前上下文中包含其他网络应用等外部资源。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接