在userIndexPage.jsp中添加:
1、在util中导入2个类文件
分别为:PageBean.java,PageInfo.java
1、添加js文件
<!-- 分页需要的js -->
<script language="javascript" src="${pageContext.request.contextPath }/script/function.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath }/script/pub.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath }/script/validate.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath }/script/page.js"></script>
2、在form1中添加
查询按钮需要修改:
<input style="font-size:12px; color:black; height=20;width=80" id="BT_Add" type="button" value="查询" name="BT_find"
onclick="gotoquery('userAction_mainpage.do')">
<!-- ly add -->
<input type="hidden" name="initflag" value="0">
<input type="hidden" name="pageNO" value="" >
<!-- ly add end -->
3、在form2的最后加
<!-- ly add start-->
<tr>
<td width="100%" height="1" colspan="2">
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<s:if test="#request.page!=null">
<tr>
<td width="15%" align="left">总记录数:<s:property value="%{#request.page.totalResult}"/>条</td>
<td width="14%" align="right"></td>
<s:if test="#request.page.firstPage">
<td width="8%" align="center">首页 |</td>
<td width="10%" align="center">上一页 |</td>
</s:if>
<s:else>
<td width="8%" align="center"><u><a href="#" onClick="gotopage('elecUserAction_home.do','start')">首页 |</a></u></td>
<td width="10%" align="center"><u><a href="#" onClick="gotopage('elecUserAction_home.do','prev')">上一页 |</a></u></td>
</s:else>
<s:if test="#request.page.lastPage">
<td width="10%" align="center">下一页 |</td>
<td width="8%" align="center">末页</td>
</s:if>
<s:else>
<td width="10%" align="center"><u><a href="#" onClick="gotopage('elecUserAction_home.do','next')">下一页 |</a></u></td>
<td width="8%" align="center"><u><a href="#" onClick="gotopage('elecUserAction_home.do','end')">末页</a></u></td>
</s:else>
<td width="6%" align="center">第<s:property value="%{#request.page.pageNo}"/>页</td>
<td width="6%" align="center">共<s:property value="%{#request.page.sumPage}"/>页</td>
<td width="21%" align="right">至第<input size="1" type="text" name="goPage" >页
<u><a href="#" onClick="gotopage('elecUserAction_home.do','go')">确定</a></u></td>
<td><input type="hidden" name="pageNO" value="${page.pageNo }" ></td>
<td><input type="hidden" name="prevpageNO" value="${page.pageNo-1 }"></td>
<td><input type="hidden" name="nextpageNO" value="${page.pageNo+1 }"></td>
<td><input type="hidden" name="sumPage" value="${page.sumPage }" ></td>
</tr>
</s:if>
</table>
</td>
</tr>
<!-- ly add end-->
4、在userListPage.jsp中添加userIndexPage.jsp内容中,form2中间的内容
5、struts的配置文件
<result name="main">
/WEB-INF/page/system/userIndex.jsp
</result>
<result name="list">
/WEB-INF/page/system/userList.jsp
</result>
5、
Action类
//使用分页用的方法
public String mainpage(){
List<ElecUserForm> list = elecUserService.getUserList(request,elecUserForm);
request.setAttribute("userList", list);
if(request.getParameter("initflag")!=null && request.getParameter("initflag").equals("0")){
return "listPage"; //有参数说明是从页面刷新过来进行局部刷新
}else{
return "mainPage"; //没有参数说明是从点左边菜单初始化进入此页面
}
}
Service类
//使用分页用的方法
public List<ElecUserForm> getUserList(HttpServletRequest request,ElecUserForm elecUserForm) {
String userName = elecUserForm.getUserName();
String whereHql = "";
List paramsList = new ArrayList();
if(userName!=null && !userName.equals("")){
whereHql += " and o.userName like ?";
paramsList.add("%"+ userName +"%");
}
Object [] params = paramsList.toArray();
LinkedHashMap<String, String> orderby = new LinkedHashMap<String, String>();
orderby.put(" o.jctID", "desc");
//List<ElecUser> list = elecUserDao.FindObjectByConditionNoPage(whereHql, params, orderby);
//ly add
PageInfo pageInfo=new PageInfo(request);
List<ElecUser> list = elecUserDao.FindObjectByCondition(whereHql, params, orderby,pageInfo);
request.setAttribute("page", pageInfo.getPageBean());// 保存分页信息
List<ElecUserForm> formlist = this.getUserListPoToVo(list);
return formlist;
}
DAO类
//使用分页用的方法
public List<T> FindObjectByCondition(String whereHql,
final Object[] params, LinkedHashMap<String, String> orderby,final PageInfo pageInfo) {
String hql = "from "+entity.getSimpleName()+" o where 1=1";
//处理排序
String orderbystr = buildOrderBy(orderby);
hql = hql + whereHql + orderbystr;
final String fhql = hql;
List<ElecText> list = (List<ElecText>)this.getHibernateTemplate().execute(new HibernateCallback(){
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
Query query = session.createQuery(fhql);
setParam(query,params);
pageInfo.setTotalResult(query.list().size());
query.setFirstResult(pageInfo.getBeginResult()); // 首条记录
query.setMaxResults(pageInfo.getPageSize()); // 记录总数
return query.list();
}
});
return (List<T>) list;
}
------------------------------------------------------------------------------------------------------------------
1:在page下导入pageUI.jsp
2:在userIndex.jsp和userList.jsp中添加<%@include file="/WEB-INF/page/pageUI.jsp" %>
Java+jsp+js实现前后端分页.zip
193 浏览量
2023-07-24
22:04:04
上传
评论
收藏 7KB ZIP 举报
小小哭包
- 粉丝: 1899
- 资源: 3854
最新资源
- 南京邮电大学数学实验:熟练掌握 Matlab 软件的基本命令和操作
- 2017校招真题校园招聘真题算法题(37道)Python源码.zip
- 基于单片机protues仿真的多功能自动饮水机系统设计(仿真图、源代码、演示视频)
- 二叉树7-1-1.cpp
- android 9.0 原生模拟器 签名文件
- 技术面试最后反问面试官的话 校招面试非技术问题有哪些 非技术问题如何回答.png
- NB-IOT-BC26全网通模块Altium+ CADENCE +PADS三种格式(原理图SCH+PCB封装库)文件.zip
- 基于微信小程序开发的校园失物招领系统源码毕业设计(优质项目源码).zip
- 词向量是一种将自然语言中的单词转换为数值向量的技术,它能够捕捉词义和上下文信息
- nmap与masscan的简单使用
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈