`
xwcueh
  • 浏览: 25148 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

分页代码共享

阅读更多
1. 分页引用:
   
<jsp:include page="/jsp/common/resource_page.jsp"/>

2. resource_page.jsp代码:
   
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<c:set var="basePath" value="${pageContext.request.contextPath }" />
<ul class="pagination">
	<c:if test="${pages <=5}">
		<c:forEach items="${pagesList}" var="p" varStatus="status">
			<li <c:if test="${page eq status.index+1}">class="active"</c:if>><a
				href="javascript:void(0)"
				<c:if test="${page ne status.index+1}">onclick="searchList(${status.index+1})"</c:if>>${status.index+1}</a>
			</li>
		</c:forEach>
	</c:if>
	<c:if test="${pages >5}">
		<li <c:if test="${page eq 1}">class="disabled"</c:if>><a
			href="javascript:void(0)"
			<c:if test="${page ne 1}">onclick="searchList(${page-1})"</c:if>>&laquo;</a>
		</li>
		<c:forEach items="${pagesList}" var="p" varStatus="status" begin="${beginPage }" end="${endPage }">
			<li <c:if test="${page eq status.index+1}">class="active"</c:if>><a
				href="javascript:void(0)"
				<c:if test="${page ne status.index+1}">onclick="searchList(${status.index+1})"</c:if>>${status.index+1}</a>
			</li>
		</c:forEach>
		<li <c:if test="${page eq pages}">class="disabled"</c:if>><a
			href="javascript:void(0)"
			<c:if test="${page ne pages}">onclick="searchList(${page+1})"</c:if>>&raquo;</a>
		</li>
	</c:if>

</ul>
    

3. 根据页码请求数据:
   
function searchList(page){
    		var basePath = '${basePath}';
    		document.thisform.action = basePath+"/trade/queryOrder.htm?page="+page+"&rows=20";
    		$("#thisform").submit();   		
    	}

4. controller编码:
   
@RequestMapping(value = "/queryOrder.htm")
	public String queryOrderInfo(Model model, HttpServletRequest request, 
			HttpServletResponse response) throws ParseException {
		LOGGER.info(JSON.toJSONString(request.getParameterMap()));		
		// 分页数据
		String page = request.getParameter("page");
		String size = request.getParameter("rows");
		int offset = 0;
		if (null!=page&&!"".equals(page))
			offset = (Integer.parseInt(page) - 1) * Integer.parseInt(size);
		else
			page = "1";
		int limit = 20;
		if (null!=size&&!"".equals(size))
			limit = Integer.parseInt(size);
		//查询结果
		OrderDetailBo order = new OrderDetailBo();
		order = setOrderDetailBoValue(request, model, response, order);
		if (order == null) {
			return "forward:../index.htm";
		}
		List<OrderDetailBo> list = orderDetailService.queryPageList(order,offset,limit);
		int total = orderDetailService.queryCount(order);
		//返回页面model
		model.addAttribute("orderList", list);		
		pageBuildParameters(model,total,Integer.parseInt(page),limit);

		return "trade/orderQuery";

	}

5. pageBuildParameters方法的编码:
   
	private void pageBuildParameters(Model model,int total,int page,int limit) {
		model.addAttribute("total", total);
		model.addAttribute("page", page);
		model.addAttribute("size", limit);
		int pages = total%limit>0?(total/limit)+1:(total/limit);
//		pages = 5;测试
		model.addAttribute("pages", pages);
		List<Integer> pagesList = new ArrayList<Integer>();
		for (int i=0; i<pages; i++) {
			pagesList.add(i+1);
		}
		model.addAttribute("pagesList", pagesList);
		int beginPage = 0;
		int endPage = 4;
		if (pages>5) {
			int pageGroup = page%5>0?(page/5)+1:(page/5);
			if (pages-page>=5) {
				beginPage = (pageGroup-1)*5;
				endPage = pageGroup*5-1;
			} else {
				beginPage = pages-5;
				endPage = pages;
			}
		}
			
		model.addAttribute("beginPage", beginPage);
		model.addAttribute("endPage", endPage);
	}
分享到:
评论

相关推荐

    PHP+MYSQL分页代码类

    **PHP+MYSQL分页代码类**是一个用于处理大型数据集的实用工具,旨在优化网站性能,提高用户体验。在网页上显示大量数据时,分页是一种常见的解决方案,它将结果分割成多个页面,允许用户逐步浏览,而不是一次性加载...

    repeater等公共类分页代码

    本资源“repeater等公共类分页代码”提供了一种实现Repeater控件分页的方法,通过创建可复用的公共类,使得分页功能在多个页面间共享,降低代码冗余,提高代码的可维护性。 首先,我们需要理解Repeater控件的基本...

    一个分页代码

    从给定的PHP分页代码片段中,我们可以深入解析并理解其核心功能和实现机制,以下是对该分页代码的详细分析与知识点提取。 ### 分页功能概述 分页是Web开发中的常见需求,用于处理大量数据时的展示问题,避免一次性...

    js脚本分页代码分享(7种样式)

    从内容片段中可以提炼出一些关于脚本分页代码的实现特点: 1. **样式的复用性**:通过CSS类的定义,使得多个元素可以共享同一套样式,减少代码重复,提高维护效率。 2. **简洁的DOM操作**:分页逻辑通过简单的...

    一个非常优秀的基于GridView实现的分页控件源程序代码

    6. **App_Code**:这是一个特殊的目录,在ASP.NET应用程序中用于存放共享的代码类。在本项目中,可能包含了处理数据访问和业务逻辑的类文件。 7. **Images**:该目录通常存储用于网页的图像资源,可能包括分页控件...

    模拟百度的JSP分页源代码

    首先,JavaBean是Java中的一种组件模型,它定义了一种规范,使得Java对象可以在不同环境中被共享和重用。在本项目中,JavaBean可能用于封装分页所需的数据和逻辑,例如当前页数、总页数、每页显示的条目数等属性,并...

    可重用的MVC分页方法(ASP.NET MVC)

    6. **扩展性与可复用性**:为了实现代码的可重用性,我们可以创建一个通用的分页帮助类或辅助方法,供多个控制器和视图共享。这样,每次需要分页功能时,只需调用这个通用方法,就能轻松实现。 综上所述,这个"可...

    AspNetPager分页控件源代码

    - `AspNetPager2003.suo`和`.csproj.user`:这两个文件存储了用户特定的设置,如IDE的布局、断点和调试配置,它们不是源代码控制的一部分,通常不与他人共享。 3. **特性与功能**: - **样式自定义**:...

    一个Web分页控件功能源码

    学习到的一个分页源码,共享给大家: Repeater分页 DataList分页 Url分页 使用Url重写技术 Url逆向分页 N层结构应用 使用XML文件数据源 图片浏览示例 使用AccessDataSource 使用SqlDataSource 使用ObjectDataSource ...

    操作系统银行家模拟处理机调度算法分页管理实验代码c++

    在多用户环境中,资源(如内存、磁盘空间、打印机等)可能会被多个进程共享。银行家算法通过预分配和预留资源来避免死锁,确保系统安全。它模拟了一个银行系统,每个进程被视为银行的客户,每个资源被视为银行的存款...

    分页存储管理报告(含完整代码)

    通过这个实验,参与者不仅可以学习到分页存储管理的基础理论,还可以通过编写和调试代码,深入理解地址转换过程,以及各种页面淘汰算法的工作原理。这些经验对于理解操作系统如何高效地管理内存至关重要,对于未来...

    vue.js分页插件代码

    4. 添加状态管理,例如Vuex,以便在多个组件间共享分页状态。 5. 提供国际化支持,方便不同语言的用户使用。 总的来说,这个"vue.js分页插件代码"提供了一个基础的分页解决方案,通过Vue的计算属性和事件系统,实现...

    C#ASP分页的用户控件代码

    用户控件是一种可以重用的组件,可以包含HTML元素、服务器控件以及自定义代码,便于在多个页面间共享。 分页是一种优化网页性能和用户体验的技术,它允许用户逐步加载大量数据,而不是一次性加载所有内容。在ASP...

    PB 做的分页查询24行一页

    关于“dlls”这个压缩包子文件的文件名称,这通常指的是动态链接库文件,它们包含可由多个程序共享的代码和数据。在这个PB Demo中,dlls可能是PB应用所依赖的一些特定库或自定义函数库,这些库文件可能包含了与...

    java多线程分页查询

    多线程是指在一个程序中包含多个可以并发执行的线程,这些线程共享相同的内存空间。通过合理利用多线程技术,可以显著提升程序的运行效率和响应速度。在Java中,可以通过继承`Thread`类或者实现`Runnable`接口来创建...

    分页控件的dll

    DLL是Windows操作系统中的一种共享库,它包含了一组可执行代码和数据,可供多个程序同时调用。对于开发者来说,DLL可以减少内存占用,提高代码重用性,并简化软件维护。 AspNetPager.dll是E.W.D.N.Y.C.公司开发的...

    Spring+mybatis+PageHelper分页插件

    它通过拦截器的方式,自动帮助我们完成分页查询,无需编写复杂的分页代码。PageHelper不仅支持物理分页,还支持逻辑分页,同时兼容多种数据库,如MySQL、Oracle、DB2等。 在"描述"中提到,这是一个新手项目,后端...

    漂亮的js分页效果

    9. **状态管理**:在单页应用中,分页状态(当前页、总页数等)可能需要与其他组件共享。使用状态管理库如Redux或Vue的Vuex可以帮助组织和管理这些状态。 10. **用户体验优化**:加载新分页时,避免让用户等待,...

    asp.net+jquery+json+分页

    在`app_code`目录下,开发者通常会放置共享的类库代码,比如自定义的数据库访问层或业务逻辑。这些代码可能包括处理分页查询的函数。 `App_Data`是ASP.NET默认的存放数据库文件的目录,如果项目使用了如SQL Server ...

    winform分页控件

    3. DLL文件:动态链接库(DLL)是Windows操作系统中的共享库,包含可由多个程序同时使用的代码和资源。在本例中,分页控件被封装成DLL,便于其他项目引用和使用。 二、功能特性 1. 用户友好的界面:Winform分页...

Global site tag (gtag.js) - Google Analytics