当前位置: 首页 > 知识库问答 >
问题:

如何将页眉和页脚页面正确导入FreeMarker页面?

郭远
2023-03-14

我正在开发一个Spring MVC应用程序,它将FreeMarker用于我的视图。

我对FreeMarker非常陌生,我有以下问题:在我的projct中,有3个文件必须被组装到一个页面中。

所以我有:

1) 标题。ftl表示我所有页面的标题,类似于:

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js is-ie8"><![endif]-->
<!--[if gt IE 8]><!--><html class="no-js"><!--<![endif]-->
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Registrazione -  MY WEBSITE</title>
        <meta name="robots" content="noindex,nofollow">

        <link rel="stylesheet" href="resources/css/webfont.css">
        <link rel="stylesheet" href="resources/bootstrap/css/bootstrap.min.css">
        <link rel="stylesheet" href="resources/bootstrap/css/bootstrap-theme.min.css">
        <link rel="stylesheet" href="resources/plugins/bs-select/bootstrap-select.min.css">
        <link rel="stylesheet" href="resources/plugins/bs-dialog/bootstrap-dialog.min.css">
        <link rel="stylesheet" href="resources/css/style.css" />

    </head>

    <body id="main">

        <!-- versione per popup. non prendere in considerazione -->
        <!--
        <div class="container page-header">
            <h1>MY WEBSITE</h1>
        </div>

2)footer.ftl代表我所有页面的页脚:

<script src="assets/bootstrap/js/bootstrap.min.js"></script>
<script src="assets/plugins/bs-select/bootstrap-select.min.js"></script>
    <script src="assets/plugins/bs-select/i18n/defaults-it_IT.min.js"></script>
    <script src="assets/plugins/bs-dialog/bootstrap-dialog.min.js"></script>
    <script src="assets/plugins/jq-form-validation/jquery.validation.js"></script>
    <script src="assets/js/functions.lib.js"></script>
    <script src="assets/js/form-validation.js"></script>

    </body>
</html>

3) 然后我有了我的特定页面(名为myPage.ftl),它只表示内容,如下所示:

<h1>This is the content</h1>
<p>Some inforamation</p>

标题。ftl和页脚。ftl位于我的项目的**\WEB-INF\freemarker\layout**目录中。

所以我的问题是:如何导入myPage.ftl内容上方的header.ftl内容和myPage.ftl页面内容下方的footer.ftl?

共有1个答案

汤承德
2023-03-14

我使用用户定义的宏进行页面布局,例如,让我们调用您的布局<代码>标准页面。ftl:

<#macro standardPage title="">
<!DOCTYPE html>
<html lang="en">
<head>
    <title>${title}</title>
</head>
<body>
    <#include "/include/header.ftl">    

    <#nested/>

    <#include "/include/footer.ftl">    
</body>
</html>
</#macro>

然后,您可以在每个页面中调用此宏,例如主页。ftl:

<#include "/pages/standardPage.ftl" />

<@standardPage title="Home">
    <h1>Home Page</h1>
    <p>This bit replaces the nested tag in the layout</p>
</@standardPage>
 类似资料:
  • 问题内容: 如何使用itext从html源向pdf添加标头? 当前,我们扩展了PdfPageEventHelper并覆盖了这些方法。工作正常,但是当我进入2个以上页面时,它将引发RuntimeWorkerException。 问题答案: 通常, 禁止 在事件中添加内容。这是 禁止 添加内容到的对象。您应该使用而 不是 文档在方法中添加页眉和页脚。此外:通过一遍又一遍地解析HTML,您正在浪费大量C

  • 也许以前有人问过这个问题,但我似乎找不到一个准确的答案或解决办法。我开始使用RecycerView,并使用LinearLayoutManager实现了它。现在,我想添加自定义的页眉和页脚项,这些项不同于RecycerView中的其他项。页眉和页脚不应该粘,我希望他们滚动与其余的项目。有人能指出一些例子如何做到这一点或只是分享想法。我会非常感激的。THX

  • 问题内容: 如何在我的PDF页面中添加 页眉 和 页脚 ?我想要一个表,表头中有3列,其他表中,页脚中有3列。我的页面可能是A3或A4,并且是横向或纵向。 谁能帮我?我在互联网上找不到很好的例子。 谢谢! mas正 问题答案: 创建一个MyPageEventListener类,该类扩展了 PdfPageEventHelper 将页面事件侦听器添加到PdfWriter对象 在MyPageEventL

  • 问题内容: 我真的不喜欢在每个控制器中编写代码: 是否可以这样做,将自动包含页眉和页脚,如果需要更改它,我们也可以这样做吗?你怎么处理?还是您认为这不是问题?谢谢。 问题答案: 这是我的工作: 对于CI 3.x: 然后,在您的控制器中,这就是您要做的一切:

  • 问题内容: 我在将新的简单XWPFTable添加到XWPFHeader(或Footer)时遇到了严重的麻烦。不幸的是,似乎只有一个人遇到相同的问题(https://bz.apache.org/bugzilla/show_bug.cgi?id=57366#c0)。 有谁有办法实现这一目标? 任何帮助将不胜感激! 亲切的问候… 〜丹尼尔 问题答案: 这可以使用公共XWPFTable insertNew

  • 版本:1.0.0 AcademicProgramBusinessEntityCentreDoma执行时间:00:000.00 /NWU/StudentInformation/AcademicProgramDevelopment Build:v1.0.9-Dev