我正在使用spring来显示jsp页面。没关系。现在我想在其中包含另一个页面。我知道我可以在页面中使用<jsp:include>
标签但是我想使用控制器将一些逻辑传递给要包含的页面。有可能吗?
谢谢,
Krt_Malta
答案 0 :(得分:1)
您可能需要签出Freemarker或Velocity等模板引擎。 Here's描述了Spring如何与视图技术集成。
答案 1 :(得分:1)
您的控制器可以向Model添加对象,Spring会将它们作为属性添加到HTTPRequest中,这是什么意思?包含jsp片段不会影响它,您的jsp片段可以访问请求属性。否则我不清楚你的意思是“将一些逻辑传递给页面”。
答案 2 :(得分:0)
查看JSTL(Jsp标准标记库)。 您可以使用JSTL&lt; c:if&gt;在JSP中实现条件逻辑。或&lt; c:选择&gt;标签。然后,而不是将逻辑分成多个文件并使用&lt; jsp:include&gt;要包含您想要的逻辑,您可以在页面中构建所有逻辑,控制器可以设置请求(或其他范围)属性以打开您想要的逻辑。
例如:
<c:if test="${Order66}"
<c:forEach items="${JediMembership}" var="jedi">
kill ${jedi}
</c:forEach>
</c:if>
<c:if test="${Order67}"
two large pizza, extra cheese.
</c:if>
然后,控制器在请求(或任何其他范围)中设置“Order66”和/或“Order67”。