pager-taglib分页及QBC

jsp部分:
引入tld
<%@ taglib uri="/WEB-INF/pager-taglib.tld" prefix="pg"%>

页面部分
<!--*****************************************-->
	<br>
	<!-- 分页 -->
	<logic:notEmpty name="list">
	<pg:pager items="${maxItems}"  url="viewTrainPlan.do" maxPageItems="${maxPageItems}"
		export="currentPageNumber=pageNumber">
		<!-- 查询分页时需要提交的参数 -->
		<pg:param name="xxxx" value="${xxxx}"/>
		<pg:param name="method" value="viewTrainPlan"/>

		<pg:index>
			<pg:first>
				<a href="${pageUrl}"><bean:message key="page.first" bundle="workRoom" /></a>
			</pg:first>
			<pg:prev>
				<a href="${pageUrl}"><bean:message key="page.prev" bundle="workRoom" /></a>
			</pg:prev>
			<pg:pages>
				<c:choose>
					<c:when test="${currentPageNumber eq pageNumber}">
						<font color="red">${pageNumber}</font>
					</c:when>
					<c:otherwise>
						<a href="${pageUrl}">${pageNumber}</a>
					</c:otherwise>
				</c:choose>
			</pg:pages>
			<pg:next>
				<a href="${pageUrl}"><bean:message key="page.next" bundle="workRoom" /></a>
			</pg:next>
			<pg:last>
				<a href="${pageUrl}"><bean:message key="page.last" bundle="workRoom" /></a>
			</pg:last>
		</pg:index>
	</pg:pager>
	</logic:notEmpty>
	<br>
<!--*****************************************-->


action需要处理的东西
//起始查询值的得到方法
String paramOffset = request.getParameter("pager.offset");

		int offset = ConstantUtil.DEFAULT_OFFSET;

		if (!GeneralUtil.isStringEmpty(paramOffset)) {
			offset = Integer.parseInt(paramOffset);
		}
//将list和count值填充到request,pc是
// 设置总共有多少条数据
		request.setAttribute("maxItems", count值);
		// 设置每页显示的数据条数
		request.setAttribute("maxPageItems",
				每页显示的最大值);
		// 设置查询结果集
		request.setAttribute("list", 根据offset和查询出来的list);


qbc很好很强大
DetachedCriteria dc=DetachedCriteria.forClass(TTrainPlan.class);
dc.add(Restrictions.ilike("name", name,MatchMode.ANYWHERE));
//求count
dc.setProjection(Projections.rowCount());
int x=(Integer) dc.getExecutableCriteria(session).uniqueResult();
//求list
 Criteria criteria = dc.getExecutableCriteria(session);
		 criteria.setProjection(null);
		 criteria.setFirstResult(offset);
		 criteria.setMaxResults(maxPageItems);
		list= criteria.list();

root
criteria.setResultTransformer(CriteriaSpecification.ROOT_ENTITY);


你可能感兴趣的:(java,jsp,Web)