用freemarker做过的一个自定义标签,分页用的 <#macro page totalPage total actionUrl pageSize currentPage > <#if (total>0)> <#if actionUrl?contains("?")> <#assign actionUrl="${actionUrl }&pageSize=${pageSize }&pageNumber="> <#else> <#assign actionUrl="${actionUrl }?&pageSize=${pageSize }&pageNumber="> </#if> <ul id="myPage" class="pagination pagination-small m-t-none m-b-none"> <#-- 上一页按钮 --> <#if (currentPage > 1) > <li><a href="${actionUrl }${currentPage -1 }" > <@spring.message "tags.myPage2.PreviousPage" /> </a></li> </#if> <#-- 第一页按钮 --> <#if 1 == currentPage> <li class="active"><a>1</a></li> <#else> <li><a href="${actionUrl}1" ></a></li> </#if> <#if (totalPage<7)> <#if ((totalPage - 1)>=2)> <#list 2..(totalPage - 1) as i> <#if currentPage == i> <li class="active"><a>${i }</a></li> <#else> <li><a href="${actionUrl }${i }" >${i }</a></li> </#if> </#list> </#if> <#else> <#if (currentPage < 6)> <#list 2..5 as i> <#if currentPage == i > <li class="active"><a>${i }</a></li> <#else> <li><a href="${actionUrl }${i }" >${i }</a></li> </#if> </#list> <#if ((currentPage + 2) <= totalPage)> <li><a>...</a></li> </#if> <#else> <#if ((totalPage - currentPage) < 5)> <#if ((totalPage - 4) > 2)> <li><a>...</a></li> </#if> <#list (totalPage -4)..(totalPage -1) as i> <#if currentPage == i > <li class="active"><a>${i }</a></li> <#else> <li><a href="${actionUrl }${i }" >${i }</a></li> </#if> </#list> <#else> <li><a>...</a></li> <#list (currentPage -2)..(currentPage +2) as i> <#if currentPage == i> <li class="active"><a>${i }</a></li> <#else> <li><a href="${actionUrl }${i }" >${i }</a></li> </#if> </#list> <li><a>...</a></li> </#if> </#if> </#if> <#-- 最后一页按钮 --> <#if (totalPage > 1)> <#if totalPage == currentPage > <li class="active"><a>${totalPage }</a></li> <#else> <li><a href="${actionUrl }${totalPage }" >${totalPage }</a></li> </#if> </#if> <#-- 下一页按钮 --> <#if (totalPage > currentPage)> <li><a href="${actionUrl }${currentPage +1}" > <@spring.message "tags.myPage2.NextPage" /> </a></li> </#if> </ul> </#if> <#if (total <= 0)> <@spring.message "decorator.common.search_empty" /> </#if> </#macro> <@page totalPage='${pageCount}'?number total='${pageInfo.totalCount}'?number actionUrl="${ctx}/detail/detail/${dto.productId?c}" pageSize='${pageInfo.pageSize}'?number currentPage='${pageInfo.pageNum}'?number /> <#-- pageCount 页数,total 总条数 ,pageSize 每页数量,currentPage 当前页 -->
相关推荐
例如,你可以创建一个自定义标签用于处理分页数据,接受页码和每页数量作为参数,然后在后台查询数据库并返回相应的页面内容。 此外,FreeMarker还支持自定义函数,它们类似于JavaScript中的函数,可以接收参数并...
一个用FTL定义的非常通用数据分页指令,有源码,有使用示例。使用效果图可以参看本人博客中的相关文章:http://blog.csdn.net/qjyong/archive/2009/10/18/4693142.aspx
在这个主题“freemarker自定义分页标签宏”中,我们将深入探讨如何在FreeMarker中创建自定义的分页标签宏,以便更有效地管理和展示大量数据。 首先,分页是一种常见的网页设计技术,用于将大量数据分割成小块,使...
Freemarker分页是Web开发中的一个重要概念,它主要用于在大量数据展示时,将结果集分割成多个小块,每次只加载一部分数据,提高页面加载速度并提升用户体验。在这个例子中,我们看到的是如何在使用Struts2框架的基础...
通过定义宏,我们可以创建一个通用的分页组件,便于在多个页面上重复使用。 1. **宏定义**: 在FreeMarker中,宏定义通常放在`.ftl`文件的`<#macro>`和`</#macro>`标签之间。宏的参数可以像函数参数一样定义,例如...
自定义标签是Freemarker的一个强大特性,它可以帮助我们更好地组织视图层代码,提高代码复用性,使得模板更加模块化。下面将详细介绍Spring MVC与Freemarker自定义标签的使用。 首先,我们需要了解Freemarker的基础...
本自定义分页标签源代码提供了一种解决方案,它独立于数据库操作,仅处理分页逻辑,允许开发者专注于数据获取和展示。接下来,我们将详细讨论相关知识点。 1. **自定义标签**: 自定义标签是JSP中的一种特性,允许...
在这个场景下,我们讨论的是一个名为"非常好用的自定义分页标签"的组件,它由一位个人开发者创建,并打包在一个名为"kevinb.jar"的Java档案文件中。 首先,我们需要理解什么是自定义标签。在JSP(JavaServer Pages...
最近比较闲,想起来一直没时间做一个好点的分页效果。嗯马上做一个。分页都太熟悉了。以往用的分页都是比较常见的就是上一页,下一页,顶多再加个跳转到第几页。但是有没有好点的效果呢?因为现在一般都用strut2,...
Freemarker是一个强大的模板引擎,常用于Web应用中的视图层渲染,比如Spring MVC框架中的JSP替代技术。本示例关注的是如何在Freemarker(FTL)中创建一个通用的`select`下拉框,以满足各种Web界面中的下拉选择需求。...
你可以配置一个JSP或FreeMarker模板,用于展示数据和生成分页链接。这个模板会接收到Action传递过来的分页信息,然后使用jQuery的pagination插件生成相应的HTML元素。 在前端,使用jQuery的pagination插件时,你...
综合上述内容,我们可以理解这是一个使用SSH框架搭建的Java Web应用,它利用Freemarker展示视图,实现了分页功能并通过Ajax异步请求来提升用户体验。在实际开发中,这样的应用通常会涉及到数据库设计、模型-视图-...
【标题】"jpager-分页demo"是一个关于使用jpager库实现分页功能的示例项目。在Web开发中,分页是处理大量数据时不可或缺的元素,它能够帮助用户有条不紊地浏览信息,提高用户体验。jpager是一个专门为Java Web应用...
为了实现分页,我们需要创建一个包含分页参数(如当前页数、每页记录数)的Action类,并提供相应的业务逻辑。 2. **模型(Model)**:模型层负责与数据库交互,获取所需的数据。在分页场景下,我们需要根据Action中...
同时,可以创建一个分页Result类型,让视图层更好地展示分页信息。 二、Spring分页 Spring作为服务层,主要负责业务逻辑和数据访问。Spring提供了PagingAndSortingRepository接口,该接口继承了JpaRepository,提供...
通常,我们会创建一个拦截器来计算当前页码、总页数等信息,然后在Action类中处理这些信息,最后通过一个自定义的Result类型将分页信息传递给视图层。视图层通常会使用JSP或者FreeMarker模板来展示分页链接。 接...
四、自定义分页类 为了提高代码复用性,通常我们会创建一个通用的分页类,它包括了页码、每页数量、总记录数、总页数等属性,以及构造函数、获取当前页数据的方法。在DAO层,我们可以调用这个分页类,根据其参数...
自定义标签是Freemarker的一个重要特性,它允许开发者扩展模板语言的功能,以满足特定项目的需求。本篇文章将对Freemarker自定义标签进行深入的总结。 1. **自定义标签基础** 自定义标签在Freemarker中被称为`...
在描述中提到的"sshPage"可能是一个自定义的分页组件或者一个具体的页面文件,它包含了用于处理分页逻辑和展示的代码。这个组件可能封装了页码计算、总页数计算以及上一页、下一页链接的生成等常见功能。 实现分页...
总结来说,Java实现通用分页涉及数据库查询、自定义分页类、封装分页服务等多个环节。合理利用数据库和应用程序的分页机制,能够有效地管理和展示大量数据,同时提升用户体验。在实际项目中,还需要考虑性能优化、...