比较完整全面的分页
经过一段时间终于把分页完善了,可以实现JDBC分页(可以根据配置屏蔽不同的数据库之间的差异,并能对自动根据具体的数据库类型进行SQL优化),HIBERNATE2,和HIBERNATE3的分页,对内存中的数组进行分页,并且都支持快速的查询功能,不过hibernate分页的除外.使用HIBERNATE进行分页的时候,需要实现一个接口,将POJO转换成二维数组的形式.
同时支持将已经读取到的数据在显示到表格之前进行处理,这个功能也是通过实现一个接口来达到
在JSP上可以不写任何的JAVA代码,也不需要直接在JSP页面里面传递任何的参数,就可以显示出完整的表格.
比较典型的JDBC分页使用方式
database.clearSql();
database.setTablename("test");
database.setFields("id");
database.setFields("CODE");
database.setFields("username");
database.setFields("descript");
database.setCondition("username<>' where group by'");
//附加条件
database.setAddons( " order by id desc");
showTable.setInit(request, database,row, true);
showTable.page(); //分页
showTable.setTableName("table1");
String[][] colname = { {"0","ID"},{"1","编号"}, {"2","姓名"}, {"3","描述"} }; //显示的列名
//生成表格
String tableString1 = showTable.getTableString(colname,0,true,true,null);
String[][] queryString = { { "username", "姓名" }, { "CODE", "编号" },{ "descript", "描述" } };
//生成快速查询
String showQueryString = showTable.getQuery(queryString,"","",0);
其中的database是一个接口,可以自由替换
以下的几个表格就是根据具体设置的不同的参数显示出的不同的效果.可以在生成表格之后,从JSP上往表格内接入JS的单击或双击事件,单击或双击事件时调用的JS函数可以从外部传入 (双击或单击以下表格的行时,会有事件发生,这个事件可以由自己实现不同的效果)
ID | 编号 | 姓名 | 描述 | |
---|---|---|---|---|
Servlet: 7 | 10003 | f | the user f | |
Servlet: 6 | 10006 | e | the user e | |
Servlet: 5 | 10002 | d | the user d | |
Servlet: 4 | 10004 | c | the user c | |
Servlet: 3 | 10003 | b | the user b | |
Servlet: 2 | 10002 | a | the user a | |
Servlet: 1 | 10003 | shiwei | administrator |
<<< 1 >>> 共有1页 7条记录 转到页 每页行 搜索的全部结果 显示全部 |
administrator | admin | 10003 | |
the user a | a | 10002 | |
the user b | b | 10003 | |
the user c | c | 10004 | |
the user d | d | 10002 | |
the user e | e | 10006 | |
the user f | f | 10003 |
<<< 1 >>> 共有1页 7条记录 转到页 每页行 搜索的全部结果 显示全部 |
描述 | 姓名 | 编号 |
---|---|---|
administrator | admin | 10003 |
the user a | a | 10002 |
the user b | b | 10003 |
the user c | c | 10004 |
the user d | d | 10002 |
the user e | e | 10006 |
the user f | f | 10003 |
<<< 1 >>> 共有1页 7条记录 转到页 每页行 显示全部 |
the user a | a | 10002 |
the user b | b | 10003 |
the user c | c | 10004 |
the user d | d | 10002 |
the user e | e | 10006 |
the user f | f | 10003 |
administrator | admin | 10003 |
id | name | descript | |
---|---|---|---|
0 | 士大夫 | ewioruiew1 | |
1 | 搞活 | 346546 | |
2 | 士大夫感 | 456鬼画符 | |
3 | 结核杆菌 | 457658768768 | |
4 | 飞过海台 | 768768 | |
5 | 单峰驼人 | 3454545 | |
6 | 儿童 | 4他 |
<<< 1 2 >>> 共有2页 11条记录 转到页 每页行 搜索的全部结果 显示全部 |