- 浏览: 1721801 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (337)
- javaScript校验 (11)
- java (31)
- java连接数据库 (1)
- js应用 (41)
- JQuery (15)
- linux操作命令 (12)
- loadrunner测试 (5)
- tomcat (18)
- 数据库 (12)
- eclipse (7)
- 触发器 (7)
- 表单 (3)
- ibatis (6)
- oracle (4)
- xml (1)
- Exception (6)
- spring (16)
- struts (4)
- struts 标签 (2)
- sql (8)
- sql server (6)
- 其它 (18)
- Apache (2)
- 电脑故障 (4)
- java 线程 (1)
- dwr (8)
- jackey (18)
- 总结 (34)
- gcc linux (2)
- extjs 学习 (5)
- 网站建设 (4)
- 健康 (2)
- 房地产知识 (1)
- hibernate (3)
- mysql (7)
- linux (13)
- svn (1)
最新评论
-
阳光泛滥的日子:
很好用谢谢
java.net.URISyntaxException的解决办法 -
linjianqing:
现在有更好的处理方式吗?我正也为这发愁
applet访问打印机出现的问题 -
ruyi574812039:
非常感谢您的总结!想问几个问题!假设三个项目分别以静态部署的三 ...
在Tomcat中部署Web程序的几种方式 -
yangguo:
太j8麻烦了
Spring3.1中使用缓存注解及Shiro的缓存联合 -
bellawang:
很好用谢谢
java.net.URISyntaxException的解决办法
首先:
1.工具类page:
package com.common.util;
import java.util.List;
@SuppressWarnings("unchecked")
public class Page
{
private int totalRows; // 总行数
private int pageSize; // 每页显示的行数
private int currentPage; // 当前页号
private int totalPages; // 总页数
private int startRow; // 当前页在数据库中的起始行
private List list;
public Page(int _totalRows, int _pageSize, int _currentPage)
{
totalRows = _totalRows;
pageSize = _pageSize;
currentPage = _currentPage;
// 计算总页数
totalPages = totalRows / pageSize;
int mod = totalRows % pageSize;
if (mod > 0)
{
totalPages++;
}
currentPage = 1;
startRow = 0;
}
public int getCurrentPage()
{
return currentPage;
}
public void setCurrentPage(int currentPage)
{
this.currentPage = currentPage;
}
/**
* 获得每页显示的行数
*
* @return
*/
public int getPageSize()
{
return pageSize;
}
public void setPageSize(int pageSize)
{
this.pageSize = pageSize;
}
/**
* 获得当前页在数据库中的起始行
*
* @return
*/
public int getStartRow()
{
return startRow;
}
public void setStartRow(int startRow)
{
this.startRow = startRow;
}
public int getTotalPages()
{
return totalPages;
}
public void setTotalPages(int totalPages)
{
this.totalPages = totalPages;
}
public int getTotalRows()
{
return totalRows;
}
public void setTotalRows(int totalRows)
{
this.totalRows = totalRows;
}
/**
* 第一页
*/
public void first()
{
currentPage = 1;
startRow = 0;
}
/**
* 前一页
*/
public void previous()
{
if (currentPage == 1)
{
return;
}
currentPage--;
startRow = (currentPage - 1) * pageSize;
}
/**
* 下一页
*/
public void next()
{
if (currentPage < totalPages)
{
currentPage++;
}
startRow = (currentPage - 1) * pageSize;
}
/**
* 最后一页
*/
public void last()
{
currentPage = totalPages;
startRow = (currentPage - 1) * pageSize;
}
/**
* 跳转到某一页
*/
public void any()
{
if (currentPage < 1)
{
currentPage = 1;
}
if (currentPage > totalPages)
{
currentPage = totalPages;
}
startRow = (currentPage - 1) * pageSize;
}
public void refresh(int _currentPage)
{
currentPage = _currentPage;
if (currentPage > totalPages)
{
last();
}
}
public List getList() {
return list;
}
public void setList(List list) {
this.list = list;
}
}
2.工具类pageHelp:
package com.common.util;
import javax.servlet.http.HttpServletRequest;
public class PageHelp
{
public static Page getPage(HttpServletRequest request, int totalRows,
int pageSize, int currentPage)
{
Page page = new Page(totalRows, pageSize, currentPage);
// 获得当前页号
String pagecount = currentPage + "";
// 如果当前页号为空,表示为首次查询该页
// 如果不为空,则刷新page对象,输入当前页号等信息
if (pagecount != null)
{
page.refresh(Integer.parseInt(pagecount));
}
// 获取当前执行的方法,首页,前一页,后一页,尾页。
String pagerMethod = "any";
if (request.getParameter("pageMethod") != null && !"undefined".equals(request.getParameter("pageMethod")))
{
pagerMethod = request.getParameter("pageMethod");
}
if (pagerMethod != null)
{
if (pagerMethod.equals("first"))
{
page.first();
}
else if (pagerMethod.equals("previous"))
{
page.previous();
}
else if (pagerMethod.equals("next"))
{
page.next();
}
else if (pagerMethod.equals("last"))
{
page.last();
}
else
{
page.any();
}
}
return page;
}
}
3.ClientDAOl类:
以客户列表为例:
public int getTotal()
{
String hql = "select count(*) from Client";
Query query = getSession().createQuery(hql);
return Integer.valueOf(query.uniqueResult().toString());
}
@SuppressWarnings("unchecked")
public List findByPage(int startRow, int pageSize)
{
Criteria cri = getSession().createCriteria(client.clazz);
cri.setFirstResult(startRow);
cri.setMaxResults(pageSize);
return cri.list();
}
4.ClientBIZ类:
public int getTotal()
{
return clientDAO().getTotal();
}
public List findByPage(int startRow, int pageSize)
{
return clientDAO().findByPage(startRow, pageSize);
}
5.Action类:
public Page getPage(ClientBiz biz, HttpServletRequest request)
{
int totalRows = biz.getTotal();
int pageSize = 5;
if (request.getParameter("pageSize") != null && !"undefined".equals(request.getParameter("pageSize")))
{
pageSize = Integer.parseInt(request.getParameter("pageSize"));
}
int currentPage = 1;
if (request.getParameter("currentPage") != null && !"undefined".equals(request.getParameter("currentPage")))
{
currentPage = Integer.parseInt(request.getParameter("currentPage"));
}
Page page = PageHelp.getPage(request, totalRows, pageSize, currentPage);
List list = biz.findByPage(page.getStartRow(), page.getPageSize());
if (list != null || !list.isEmpty())
{
page.setList(list);
}
return page;
}
//使用Ajax技术执行此方法
public void dolist(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
Page page = getPage(clientBiz, request);
JsonConfig config = new JsonConfig();
config.setExcludes(new String[]{"handler","hibernateLazyInitializer"});
JSONObject json = JSONObject.fromObject(page,config);
print(json.toString(), response);
}
评论
我的邮箱是:382013385@qq.com
十分感谢!!
能给我发下完整案例吗?
我的邮箱是:382013385
十分感谢!!
发表评论
-
JSON技术实战
2010-06-08 10:50 2492JSON作为一种信息的载体伴随着AJAX的红火也越来越得到广大 ... -
jquery的几种ajax方式对比
2010-06-07 17:55 5149jquery的ajax方式有如下几种: 1. $.post ... -
jQuery.ajax使用方法
2010-06-07 14:48 3921jQuery.ajax( options ) 参数: ... -
Jpage分页+Hibernate+Ajax+jquery+JSON通用技术<二>
2010-06-07 13:38 31906.为使界面美观使用JQu ... -
JSON与JAVA数据的转换
2010-06-07 11:27 1715JSON与JAVA数据的转换 JSON-li ... -
struts2,jquery,ajax实现无刷新登录
2010-06-04 16:50 89461. action: /*** 会员登录*/public S ... -
struts2 jquery json进行ajax请求
2010-06-04 13:59 2748第一步:创建 名为"ajax" 的 Jav ... -
Struts2+jQuery+JSON实现异步交互
2010-06-03 11:04 39054Struts2+JQuery+JSON实现异 ... -
Javascript弹出子窗口
2010-05-26 13:47 45801、Javascript弹出子窗口 可以通过多种方式实现,下 ... -
使用java的native2ascii工具命令来转换编码gbk,gb2312,utf-8
2010-05-25 10:58 2380做struts国际化时遇到的问题,中文需要全部用ascii码来 ... -
jackey 常用资源网址总结
2010-05-21 16:43 10101. http://www.jspcn.net/moreNew ... -
Tomcat 6.0,Resin 3.1.6 配置JNDI数据库连接池
2010-05-17 17:26 43112.1.1 Tomcat数据库连接池配置---连接S ... -
图片提交按钮与表单重复提交_jackey
2010-03-26 15:42 3316很多情况下为了美化 ... -
网站建设资源网址
2009-09-27 17:57 1289中国建站网http://mb.136z.com/ 网域高科h ... -
超详细的SQL语句语法
2009-09-17 13:41 2491比较常用的SQL语句语法( ... -
java如何遍历map的所有的元素(各种方法)
2009-08-02 12:04 48012JDK1.4中 Map map = new HashMap() ... -
.jquery 迭代 select 的option 选项
2009-01-09 13:52 4516.jquery 迭代 select 的option 选项 ...
相关推荐
jPage for jQuery ajax 分页 后端使用jPage jquery-ajax表格动态分页.
jPage分页--异步分页jPage分页--异步分页
jQuery.jpage.js分页插件制作分页列表切换动画效果代码
1、本版分页只针对Sql Server数据库,采用top n分页方式,节约资源。 2、支持GridView、DataGrid、DataList等数据控件。 3、本分页已应用于数据量百万级的项目中。 4、使用简单,并包含多种样式布局 一、使用方法:...
jPage v1.0.8 for jQuery js分页
NULL 博文链接:https://azurer.iteye.com/blog/1884956
本人写的jsp分页标签(JPage) JPage包括两种样式: 一种为原始的上一页下一页 一种样式类似百度 本人Email: jiaoer840214@163.com
JPage组件下载
css/theme/default/css/jpage.css”></link> <link ID=”skin” rel=”stylesheet” type=”text/css” href=”<%=basePath %>css/config.css” /> <script language=”javascript” type=”...
jquery 分页插件: 包括jPagination ,jpage、 quickpaginate、pager的使用;杨浦详细的示例。
相对之前一个版本添加了数据位置的显示,效果查看
但是他们插件的附属功能很多又不需要,而且没必要就为了这么一个功能区引用这个库,为速度考虑吧,当然你服务器好也行,但是... jpage.js 代码如下:/* 排序工具 by Funny ZAk <silenceacegmail> 2009-8-23 “调用方式