Pagination 带Spark框架的FreeMarker中的简单分页

Pagination 带Spark框架的FreeMarker中的简单分页,pagination,freemarker,spark-framework,Pagination,Freemarker,Spark Framework,我用FreeMarker实现了一个简单的博客使用Spark框架。我需要实现分页,以便每页仅显示5个条目,并且不必显示页码,使用“下一页”和“上一页”按钮即可。然而,我甚至不知道从哪里开始分页。这是我的当前代码,用于显示所有条目: <#list entries as art> <h2> <a href="/Entrada/${art_index}">${art.getTitle()}</a> </h2>

我用FreeMarker实现了一个简单的博客使用Spark框架。我需要实现分页,以便每页仅显示5个条目,并且不必显示页码,使用“下一页”和“上一页”按钮即可。然而,我甚至不知道从哪里开始分页。这是我的当前代码,用于显示所有条目:

<#list entries as art>
    <h2>
        <a href="/Entrada/${art_index}">${art.getTitle()}</a>
    </h2>
    <p>
        Author: <a href="">${art.getAuthor().getName()}</a>
    </p>
    <p><span class="glyphicon glyphicon-time"></span>${art.getDate()}</p>
    <hr>

    <#assign body=art.getBody()>
    <#if body?length &lt; 70>
        ${body}
    <#else>
        ${body?substring(0,70) + "..."}
    </#if>

    <br><br>
    <a class="btn btn-primary" href="/Entrada/${art_index}">Read More<span class="glyphicon glyphicon-chevron-right"></span></a>

    <hr>

</#list>


作者:

${art.getDate()}


${body} ${body?子串(0,70)+“…”}


另外,以下是Spark框架中的后端代码:

get("/Home", (request, response) -> {

    Map<String, Object> attributes = new HashMap<>();
    attributes.put("entries", entrie.getEntries());
    return new ModelAndView(attributes, "index.ftl");

}, freeMarkerEngine);
get(“/Home”,(请求、响应)->{
Map attributes=newhashmap();
attributes.put(“entries”,entrie.getEntries());
返回新的ModelAndView(属性“index.ftl”);
},freeMarkerEngine);

任何帮助都将不胜感激,提前感谢

通常在将列表放入模型之前进行分页,因为这样可以避免加载无论如何都不会显示的条目。因此,只需传递您将在当前页面上实际显示的条目列表(与整个列表相反),并传递可在模板中使用的
pageNumber
totalPages
变量(两个数字)


顺便说一句,在模板中,
art.getAuthor().getName()
可以写成
art.author.name
body?子字符串(0,70)
可以写成
body[0..70]

如果您找到了解决方案,您能分享一下您的做法吗