我有一个 Spring Tiles 配置文件,其中包含以下代码行。谁能帮助我理解这些线条。另请指导我如何获取此路径(“/WEB-INF/jsp/contents/{1}.jsp”)
<definition name="template-main" template="/WEB-INF/jsp/layouts/main.jsp">
<put-attribute name="header-content" value="/WEB-INF/jsp/sections/header.jsp" />
<put-attribute name="banner-content" value="/WEB-INF/jsp/sections/banner.jsp" />
<put-attribute name="footer-content" value="/WEB-INF/jsp/sections/footer.jsp" />
</definition>
<!-- anything that doesn't start with a slash is considered a definition here. -->
<definition name="*" extends="template-main">
<put-attribute name="primary-content" value="/WEB-INF/jsp/contents/{1}.jsp" />
</definition>
最佳答案
这只是通配符支持
https://tiles.apache.org/framework/tutorial/advanced/wildcard.html
而不是为每个页面定义多个定义
<definition name="AAA" extends="template-main">
<put-attribute name="primary-content" value="/WEB-INF/jsp/contents/AAA.jsp" />
</definition>
<definition name="BBB" extends="template-main">
<put-attribute name="primary-content" value="/WEB-INF/jsp/contents/BBB.jsp" />
</definition>
<definition name="CCC" extends="template-main">
<put-attribute name="primary-content" value="/WEB-INF/jsp/contents/CCC.jsp" />
</definition>
定义了基于通配符的定义。
因此,如果您请求“AAA”图 block ,它将被替换并返回 AAA.jsp
关于java - 在spring的tiles配置文件中有一个类似/{1}.jsp的配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24379035/