`

ibatis_ECside数据库分页

    博客分类:
  • web
 
阅读更多

JSP:

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>

<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%>

<%@ taglib prefix="ec" uri="http://www.ecside.org"  %>

<%@ page isELIgnored="false"%>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<title>test ECtable 数据库分页</title>

<link rel="stylesheet" type="text/css" href="ecside/css/ecside_style.css" />

<script type="text/javascript" src="ecside/js/ecside.js" ></script>

<script type="text/javascript" src="ecside/js/ecside_msg_utf8_cn.js" ></script> 

<script type="text/javascript" src="ecside/js/prototype_mini.js" ></script>

</head>

 

<body>    

<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">

  <tr>

    <td height="100"  style="text-align:center" valign="middle" bgcolor="#f7f7f7">

       <ec:table items="list" var="list" 

retrieveRowsCallback="limit" 

sortRowsCallback="limit" 

filterRowsCallback="limit"

action="XXX.action"

editable="false" 

width="100%" 

listWidth="100%"

classic="true"

doPreload="false"

useAjax="true"

resizeColWidth="false" 

batchUpdate="true"

nearPageNum="0"

toolbarLocation="top"

pageSizeList="10,20,50"

xlsFileName="table1.xls" 

showPrint="true"

filterable="false"

>

<ec:row style="text-align:center">

<ec:column width="5%" property="_0" title="序号"  value="${GLOBALROWCOUNT}" style="text-algin:center" editable="false"/>

<ec:column width="40%" property="userid" title="用户标识" style="text-align:center" editable="false" sortable="true"/>

<ec:column width="40%" property="username" title="用户姓名" style="text-align:center" editable="false" sortable="true"/>

</ec:row>

<c:if test="${msg != null}">

<ec:extendrow>

<tr><td colspan="3" style="text-align:center"><strong><font face='宋体' color='#5b92fa'><c:out value="${msg}"/></font></strong></td></tr>

</ec:extendrow>

</c:if>

</ec:table><br>

</td>

  </tr>

</table>

</body>

<script type="text/javascript">

function myrefresh() 

      ECSideUtil.reload('ec');

      setTimeout('myrefresh()',10000); //指定1秒刷新一次 1000=1秒

setTimeout('myrefresh()',1000); //指定1秒刷新一次 1000=1秒

</script> 

</html>

<!-- 接收已经经过数据库分页处理的List , 必须做设置 retrieveRowsCallback="limit" sortRowsCallback="limit" filterRowsCallback="limit" -->

 

POJO:

 

public class TestVO {

 

private String userid;//用户标识

private String username;//用户姓名

 

//分页用 

private int startRow;

private int endRow;

private String order;

private String sort;

 

 

public int getEndRow() {

return endRow;

}

public void setEndRow(int endRow) {

this.endRow = endRow;

}

public String getOrder() {

return order;

}

public void setOrder(String order) {

this.order = order;

}

public String getSort() {

return sort;

}

public void setSort(String sort) {

this.sort = sort;

}

public int getStartRow() {

return startRow;

}

public void setStartRow(int startRow) {

this.startRow = startRow;

}

 

public String getUserid() {

return userid;

}

public void setUserid(String userid) {

this.userid = userid;

}

public String getUsername() {

return username;

}

public void setUsername(String username) {

this.username = username;

}

}

 

ACTION:

 

public class TestAction  extends ActionSupport {

private MailService mailService;

 

public TestService getTestService() {

return testService;

}

 

public void setTestService testService;{

this.testService;= testService;

}

 

public String searchTestList() throws Exception {

HttpServletRequest request = ServletActionContext.getRequest();

TestVO vo=new TestVO();

 

Limit limit = RequestUtils.getLimit(request);

String sort=limit.getSort().getProperty();

String order=limit.getSort().getSortOrder();

int totalRows = RequestUtils.getTotalRowsFromRequest(request);

if (totalRows < 0) {

totalRows = mailService.countGetTestList(vo);

}

 

limit.setRowAttributes(totalRows, 20);

int offset = 0;

int[] rowStartEnd = new int[] { limit.getRowStart() + offset,limit.getRowEnd() + offset };

if (rowStartEnd[1] == 0) {

rowStartEnd[1] = 20;

}

 

vo.setStartRow(rowStartEnd[0]);

vo.setEndRow(rowStartEnd[1]);

vo.setOrder(order);

vo.setSort(sort);

List list = testService.getTestList(vo);

if(!list.isEmpty()){

request.setAttribute("list", list);

}else{

request.setAttribute("msg", "没有符合条件的记录!");

}

return SUCCESS;

}

}

 
 
IBATIS XML:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="test">
<typeAlias alias="test" type="com.ran.pojo.TestVO"/>
<!--获得表信息 --> 
<select id="getTestList" resultClass="test" parameterClass="test">
<![CDATA[
SELECT * FROM (SELECT pagetable.*,ROWNUM AS rowcounter FROM (
SELECT userid,username FROM users where trunc(rksj)=trunc(sysdate)
) pagetable) subt WHERE subt.rowcounter>#startRow#
AND subt.rowcounter<=#endRow#
]]>
</select>
<!--获得表记录数 --> 
<select id="countGetTestList" resultClass="java.lang.String" parameterClass="test">
SELECT count(userid) users where trunc(rksj)=trunc(sysdate)
</select>
</sqlMap>
分享到:
评论

相关推荐

    ibatis_likehbm高效分页组件

    ibatis_likehbm高效分页组件ibatis_likehbm高效分页组件ibatis_likehbm高效分页组件ibatis_likehbm高效分页组件ibatis_likehbm高效分页组件ibatis_likehbm高效分页组件 ibatis_likehbm高效分页组件 ibatis_likehbm...

    iBATIS_Spring_struts_demo.rar_DEMO_Struct spring ibatis_ibatis j

    标题中的“iBATIS_Spring_struts_demo.rar_DEMO_Struct spring ibatis_ibatis j”表明这是一个关于集成iBATIS、Spring和Struts的演示项目。这个DEMO旨在展示如何在Java应用中有效地整合这三个框架,从而实现数据持久...

    iBATIS_DBL-2.2.0.638.zip_iBATIS_DBL_ibatis_ibatis 2_ibatis2 src_

    iBATIS_DBL-2.2.0.638.zip 是一个包含了iBATIS数据库层(DBL)2.2.0.638版本的源代码包,专为Java开发者设计。iBatis是一个优秀的持久层框架,它允许开发者将SQL与Java代码分离,从而简化了数据库操作。这个压缩包...

    iBATIS_API_DOC.rar_doc_ibatis a_ibatis api_ibatis d

    这个文档集,"iBATIS_API_DOC.rar_doc_ibatis a_ibatis api_ibatis d",显然是关于iBATIS API的详细文档,旨在帮助开发者更好地理解和使用iBATIS框架。 首先,让我们深入理解iBATIS的核心概念: 1. SQL Maps:...

    Ibatis 2.3.4 数据库无关分页

    在2.3.4这个版本中,Ibatis 提供了数据库无关的分页功能,这是一种在不依赖特定数据库语法的情况下实现分页查询的方法,有助于提高代码的可移植性和维护性。 数据库无关分页的核心思想是将分页参数(如当前页数和每...

    iBATIS_JPetStore-4.0.5

    iBATIS_JPetStore-4.0.5 是一个基于Java的开源示例项目,它展示了如何使用iBATIS框架来构建一个完整的电子商务应用程序。iBATIS是一个数据映射框架,它简化了Java应用程序与数据库之间的交互,允许将SQL查询直接嵌入...

    java_ibatis_example.rar_ibatis_java

    总之,`java_ibatis_example`这个压缩包提供的资源可以帮助初学者快速理解并掌握Java与iBatis的整合,从而在实际项目中更有效地处理数据库操作。通过学习和实践这个示例,开发者能够提升自己在Java Web开发中的技能...

    ssi.rar_ibatis_ibatis struts2_java ssi_myeclipse ssi_struts2

    标题中的"ssi.rar_ibatis_ibatis_struts2_java ssi_myeclipse ssi_struts2"揭示了这个压缩包文件包含的内容,主要涉及到SSI(Server Side Include)技术、MyEclipse开发环境、以及三大框架——Struts2、Spring和...

    ORACLE、IBATIS_20100914

    ORACLE、IBATIS_20100914 ORACLE、IBATIS_20100914 ORACLE、IBATIS_20100914

    iBatis_Demo.rar_ibaties demo_ibatis de_ibatis mysql demo_ibati

    通过这个"Ibatis_Demo"项目,初学者可以了解到iBatis的基本用法,如何配置数据库连接,编写Mapper接口和XML,以及如何在实际项目中使用这些组件进行数据操作。这将为后续深入学习和使用iBatis奠定基础。

    ibatis_with_memcached

    本项目"ibatis_with_memcached"就是关于如何将Ibatis与Memcached集成,实现高效的数据库缓存策略的实例。 Ibatis是一个基于Java的SQL映射框架,它允许开发者编写SQL语句并与Java对象进行绑定,从而避免了传统的JDBC...

    Spring_Struts_Ibatis_Mysql Demo

    【Spring_Struts_Ibatis_Mysql Demo】是一个典型的Java Web应用程序示例,它整合了四个关键的技术框架:Spring、Struts、iBatis和MySQL数据库。这个项目旨在展示如何在实际开发中有效地集成这些组件,创建一个功能...

    IBATIS_IN_ACTION

    《IBATIS_IN_ACTION》是一本深度探讨iBATIS框架应用与实践的专业书籍,由Clinton Begin、Brandon Goodin和Larry Meadors共同编写。本书详细介绍了iBATIS这一流行开源框架的核心概念、工作原理以及在实际项目中的应用...

    ibatis_test测试

    基于描述,"ibatis_test测试"可能涉及到创建数据库表和库,并根据Java类的set-get方法来建立字段映射。在测试过程中,通常会执行以下步骤: - 创建数据库表结构,根据Java实体类的属性来设计表字段。 - 编写...

    ibatis_hibernate3.5_lib.zip

    hibernate下载 : http://sourceforge.net/projects/hibernate/files/hibernate3/--3.XX版本 ...IBATS下载地址:...比如:ibatis-2.3.0.677.jar, spring 可在下载你需要的版本: http://www.springsource.org/download

    IBatis_Generator_Eclipse_1.2.1.zip

    ibatis ibator eclipes插件 代码生成器 代码自动生成工具 下载后将features和plugins两个文件夹下的文件拷贝到eclipes安装路径下对应的features和plugins两个文件夹下即可

    iBATIS_DBL-2.2.0.638

    iBATIS 2.2.0 is the last release that includes the iBATIS DAO framework. After 2.2.0, the DAO iBATIS framework is removed from the downloads. We suggest converting iBATIS framework DAOs to the Spring ...

    iBATIS_02_addSequence_add_del_update_sel_sellike

    总结来说,"iBATIS_02_addSequence_add_del_update_sel_sellike" 涉及的是使用 iBATIS 框架进行数据库基本操作的关键技术,包括插入、删除、更新、选择和模糊查询。理解并熟练掌握这些技能对于任何使用 iBATIS 开发 ...

    ibatis_struts2_spring_介绍

    ibatis_struts2_spring_介绍

    ibatis_struts1_spring.rar

    本项目"ibatis_struts1_spring.rar"旨在演示如何将这三者集成,以实现数据的增删查改(CRUD)功能,并提供了Oracle数据库的建表语句和相应的配置文件。以下是对这个项目中的关键知识点的详细解析。 首先,Ibatis是...

Global site tag (gtag.js) - Google Analytics