jdon 解惑授道,企业信息化解决之道
 
JdonSD设计
JdonSD结构
JdonSD性能


 

 

 

 

Jdon框架演示

JiveJdon3.0
源码下载

GoF设计模式

在线教程

社区精彩讨论

 





J道 批量分页查询框架

特点:

  • 开发方便迅速,当显示项目数多于1页最大显示量,自动实现多页显示。
  • 采取缓存技术,大批量频繁查询时,性能最优,速度最快。
  • 基于EJB+Struts框架,易于扩展和伸缩,适合小中大型各类数据库查询系统

分页批量查询效果图:

设计原理:

EJB层使用DAO模式实现下列三个功能
1. 获得整个数据表记录总数。
2. 获取符合查询条件的所有数据ID集合。
3. 根据ID查询获取某个完整数据对象记录。

Web层基于Struts,分别实现下列功能
1. Action中对所有数据ID集合实现遍历时,根据ID获取完整数据对象,最后形成数据对象集合,保存在ActionForm中。
2. 使用标签库显示多页,标签库主要从ActionForm中获取相关信息。
3. Jsp页面显示,使用loigc:iterator 从ActionForm数据对象集合中遍历数据对象。

使用方式:

只需要两个步骤便可实现,可以反复应用在需要多页查询的各个模块中。

(一)建立ProductListAction。

 

public class ProductListAction extends ModelListAction {
  private final static ServiceServerFactory sf = ServiceServerFactory.
      getInstance();


  public PageIterator getPageIterator(HttpServletRequest request, int start,
      int count) {
    ProductManagerLocal productManager = (ProductManagerLocal)                 sf.getService(
                FrameworkServices.ProductEJB, request);
    String catId = request.getParameter("catId");
    return productManager.getProducts(catId, start, count);

  }

  public Model findModelByKey(HttpServletRequest request, Object key) {
    ProductManagerLocal productManager = (ProductManagerLocal)                 sf.getService(
                FrameworkServices.ProductEJB, request);
    return productManager.getProductByIdJDBC((String)key);

  }

}

 

(二)Jsp页面实现。 在Jsp页面加入多页显示标签语法即可 ,也可扩展为专门分页开源产品:

<MultiPages:pager actionFormName="listForm" pageUrl="/msgListAction.do?userId=XXC" count="20">
<MultiPages:prev>[ 前页 ]</MultiPages:prev>
<MultiPages:index />
<MultiPages:next>[ 后页 ]</MultiPages:next>
</MultiPages:pager>

<logic:iterate id="product" name="listForm" property="list" >

  <TR >
  <td bgcolor="#ffffff" width="90%"><b><bean:write name="product"     
         property="name"/></b>
  <br><bean:write name="product" property="description"/>
  </td>
  <td bgcolor="#ffffff" align="center">
  <input type="radio" name="productId" value="<bean:write name="product"           property="productId" />">
  </td>

  </TR>
</logic:iterate>

 

 

 





联系我们 | 关于我们 | RSS订阅 | 广告联系 | 网站地图 | 加入收藏夹
Copyright (C) 2006 Jdon.com, All Rights Reserved 版权所有 上海解道计算机技术有限公司
沪ICP备05018152号 如有意见请与我们联系 Powered by JdonFramework