`
qingqing753
  • 浏览: 4726 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

分页组件pager-taglib的使用

 
阅读更多

pageModel类

public class PageModel {
private int total;
private List<?> list;
public int getTotal() {
return total;
}
public void setTotal(int total) {
this.total = total;
}
public List<?> getList() {
return list;
}
public void setList(List<?> list) {
this.list = list;
}
}

dao类

public PageModel findOrgs(int parentId, int offset, int pageSize) {
// TODO Auto-generated method stub
String selectCountHql = "select count(*) from Organization org where org.parent is null";

if (parentId != 0) {
selectCountHql = "select count(*) from Organization org where org.parent.id = "
+ parentId;
}

int total = ((Long) this.getSession().createQuery(selectCountHql)
.uniqueResult()).intValue();

// 查询机构列表
String selectHql = "select org from Organization org where org.parent is null";
if (parentId != 0) {
selectHql = "select org from Organization org where org.parent.id = "
+ parentId;
}
List<Organization> list = this.getSession().createQuery(selectHql)
.setFirstResult(offset).setMaxResults(pageSize).list();

PageModel pm = new PageModel();
pm.setTotal(total);
pm.setList(list);
return pm;
}

 

action

public class OrgAction extends ActionSupport {
private OrganizationDao orgDao;
private int parentId;
private int pageSize;
private int offset;
private PageModel pageModel;

public PageModel getPageModel() {
return pageModel;
}

public void setPageModel(PageModel pageModel) {
this.pageModel = pageModel;
}

public int getPageSize() {
return pageSize;
}

public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}

public int getOffset() {
return offset;
}

public void setOffset(int offset) {
this.offset = offset;
}

public int getParentId() {
return parentId;
}

public void setParentId(int parentId) {
this.parentId = parentId;
}

public OrganizationDao getOrgDao() {
return orgDao;
}

public void setOrgDao(OrganizationDao orgDao) {
this.orgDao = orgDao;
}

public String getOrgByPage() {
HttpServletRequest request = ServletActionContext.getRequest();
if(this.getParentId()==0){this.setParentId(0);}
if(request.getParameter("pager.offset")==null){
offset=0;
}else{
offset=Integer.parseInt(request.getParameter("pager.offset"));
System.out.println("offset:"+offset);
}
this.setPageModel(this.getOrgDao().findOrgs(parentId, offset, pageSize));

return SUCCESS;
}

@Override
public String execute() throws Exception {

// TODO Auto-generated method stub
HttpServletRequest request = ServletActionContext.getRequest();
request.setAttribute("name", "qingqing");
return SUCCESS;
}

}

 

页面

<body>
<table bordercolor="red" border="1">
<tr>
<td>id</td><td>名称</td><td>描述</td>
</tr>
<s:iterator value="#request.pageModel.list" id="org">
<tr>
<td><s:property value="#org.id"/>
</td><td><a href=""><s:property value="#org.name"/></a></td>
<td><s:property value="#org.description"/></td>
</s:iterator>
</table>
<pg:pager url="orgAction" items="${pageModel.total}" export="currentPageNumber=pageNumber" maxPageItems="10">
<pg:first>
<a href="${pageUrl}">首页</a>
</pg:first>
<pg:prev>
<a href="${pageUrl }">上一页</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 }">下一页</a>
</pg:next>
<pg:last>
<a href="${pageUrl }">尾页</a>
</pg:last>
</pg:pager>
</body>

分享到:
评论

相关推荐

    使用pager-taglib分页完整例子

    使用pager-taglib分页,含有多种分页样式,jar包都有,只要导入就可以运行,内附有说明,java 语言的

    ssh+分页(pager-taglib)

    本资源融合了struts+spring+hibernate的集成,并充分运用jsp开源分页标签(pager-taglib)进行了分页。支持多条件的分页查询。由于上传大小限制,本人被迫将所用到的jar包目录删除,所需的几个必备jar包我已留在本...

    pager-taglib 分页扩展实例

    pager-taglib 是个很好的jsp分页标签,使用它结合jstl可以实现灵活的分页导航功能。在实际的开发中post方式的提交比较常见,本人做了一个比较通用的基于post方式的一个应用。主要实现一下功能: 1.添加输入跳转、每...

    pager-taglib分页jar包

    用于在jsp中进行分页的 pager-taglib包

    pager-taglib-2.0及使用方法

    pager-taglib-2.0及使用方法,一个很好用的页面分页工具.

    pager-taglib使用指南 .txt

    pager-taglib使用指南 .txt 很详细,里面还有例子。

    pager-taglib源码

    这是pager-taglib的官方源码,但在采用官方的pager-taglib分页传输中文参数会出现乱码,所以我采用maven新建一个pager-taglib项目对pager-taglib的源码进行小小的改动,是他支持中文传输,更重要的是把源代码提供给...

    pager-taglib-2.0

    pager-taglib-2.0,pager-taglib-2.0,pager-taglib-2.0,java分页标签。

    pager-taglib.jar

    利用pager-taglib进行查询分页时需要添加该jar包:pager-taglib.jar

    pager-taglib.jar包下载

    pager-taglib.jar包下载.很方便的分页框架。这是jar包,希望能帮到大家

    pager-taglib中文乱码解决后的JAR包

    用pager-taglib进行分页时,如果出现中文参数,由于pager-taglib默认是用ISO8859-1编码后进行参数传递,故会出现乱码现象。本人下载源码后,将编码的语句注释掉,即不进行编码,解决了中文乱码问题。改写后的代码已...

    pager-taglib-2.0 JSP分页组件

    pager-taglib-2.0 JSP分页组件 包括jar包和安装使用说明

    pager-taglib分页标签

    jsp 分页标签。 用于列表自动分页功能

    pager-taglib 分页框架+附带例子

    该资源系本人工作之余的一个小小案例,希望对大家有所帮助

    ssh2+pager-taglib实现自动分页

    Pager-taglib,支持多种风格的分页显示。实际上她是一个Jsp标签库,为在JSP上显示分页信息而设计的一套标签,通过这些标签的不同的组合,会形成多种不一样的分页页面,风格各异,她自带的DEMO就有七种左右的分页风格...

    Pager-taglib页面分页示例

    这是关于paper-taglib分页框架的小小项目,导入myeclipse中部署到服务器可直接运行,包含了两种分页风格:普通样式和谷歌样式,可以在servlet中通过注释切换。

Global site tag (gtag.js) - Google Analytics