如何在页面中重用HTML/JSP?

T.R*_*.R. 7 code-reuse jsp

我是JSP的新手,我正在尝试减少大量的剪切和粘贴代码.
在项目的每个页面上,大约有25行混合JSP,Struts标记,JSTL标记和HTML,它们已在页面的各个点进行剪切和粘贴.这些~25行重复使用的代码在页面之间甚至没有相似之处(并且有大约250页),但在每个页面中完全相同.最终这个(业务逻辑)代码应该移出View,但这样做会比我的日程安排允许的项目更大,所以我想知道是否有一种简单的方法可以重用混合标签+ JSP在页面内,作为临时修复,以便在时间允许的情况下可以分阶段重构代码.

为清楚起见,我正在寻找一种在不创建新文件(/ local到页面范围)的情况下封装代码的方法- 即它应该在调用它的同一页面中定义.

有人建议可以用Tiles完成 - 如果是这种情况,请告诉我如何操作.

Boz*_*zho 7

看看Apache瓷砖.既然你正在使用Struts,我很惊讶你还没有找到它.它基本上是一个模板引擎,我认为符合您的要求.

已建议<jsp:include>可以使用<jsp:param>以传递变量.喜欢

<jsp:include file="includedFile.jsp">
    <jsp:param name="username" value="jsmith" />
</jsp:include>
Run Code Online (Sandbox Code Playgroud)

实际上,如果只想包含1个带有公共代码的文件,我建议简单地<jsp:include>使用Tiles的功能.


jsp*_*cal 2

您可以创建一个包含文件并在需要的地方使用 jsp:include 。可变部分可以使用 jsp 条件、jstl EL 属性或 struts EL 来完成。

我不一定要重新编码现有页面,因为它们已经在工作了。