java实现用户分页消息功能
来源:互联网 发布:asp聊天室源码 编辑:程序博客网 时间:2024/06/05 02:21
java实现用户分页消息功能
package com.kero99.ygc.pojo;import java.util.List;//分页pojo 持久化类public class PageData<E> { private int PageIndex; //页码 private int ResultCount;//总记录数 private int PageCount;//总页数 private List<E> list;//分页数据 public int getPageIndex() { return PageIndex; } public void setPageIndex(int pageIndex) { PageIndex = pageIndex; } public int getResultCount() { return ResultCount; } public void setResultCount(int resultCount) { ResultCount = resultCount; } public int getPageCount() { return PageCount; } public void setPageCount(int pageCount) { PageCount = pageCount; } public List<E> getList() { return list; } public void setList(List<E> list) { this.list = list; }}
package com.kero99.ygc.pojo;
import com.kero99.ygc.entity.TbUsers;
import com.kero99.ygc.util.Data;
//继承pojo
public class MsgPageData extends PageData {
private TbUsers users; //用户
public int getPageSize(){ return Data.MSG_SIZE; //获取到的每页显示数 MSG_SIZE为常量10}public TbUsers getUsers() { return users;}public void setUsers(TbUsers users) { this.users = users;}
}
package com.kero99.ygc.service.impl;import java.util.List;import com.kero99.ygc.dao.TbMsgDao;import com.kero99.ygc.dao.impl.TbMsgDaoImpl;import com.kero99.ygc.entity.TbMsg;import com.kero99.ygc.entity.TbUsers;import com.kero99.ygc.pojo.MsgPageData;import com.kero99.ygc.service.TbMsgService;import com.kero99.ygc.util.Data;public class TbMsgServiceImpl implements TbMsgService { private TbMsgDao msgDao; public TbMsgServiceImpl() { msgDao=new TbMsgDaoImpl(); } //分页算法实现用户消息分页 //pageCount总页数=总记录数 对 每页显示数 取余==0则总记录数对每页显示数取商 否则+1页 public MsgPageData queryPage(MsgPageData pageData) { //1.已知 TbUsers users=pageData.getUsers(); int pageIndex=pageData.getPageIndex(); int pageSize=Data.MSG_SIZE; //2.未知 int resultCount=msgDao.findResultCount(users); int pageCount=(resultCount%pageSize==0)?resultCount/pageSize:(resultCount/pageSize+1); //改进版本 int pageCount=(int) Math.ceil(resultCount/Data.MSG_SIZE); List<TbMsg> list=msgDao.findInterzone(pageIndex,users); pageData.setList(list); pageData.setResultCount(resultCount); pageData.setPageCount(pageCount); return pageData; } public TbMsgDao getMsgDao() { return msgDao; } public void setMsgDao(TbMsgDao msgDao) { this.msgDao = msgDao; }}
hibernate查询用户分页的信息 public List<TbMsg> findInterzone(int pageIndex, TbUsers users) { session=BaseDao.getSession(); String hql="from TbMsg where usersid=:uid order by bdate desc"; Query query=session.createQuery(hql); query.setLong("uid", users.getId()); query.setFirstResult((pageIndex-1)*Data.MSG_SIZE); query.setMaxResults(Data.MSG_SIZE); List<TbMsg> list=query.list(); session.close(); return list; } public int findResultCount(TbUsers users) { session=BaseDao.getSession(); String hql="select count(*) from TbMsg where usersid=:uid"; Query query=session.createQuery(hql); query.setLong("uid", users.getId()); int count=Integer.parseInt(query.uniqueResult().toString()); session.close(); return count; }
package com.kero99.ygc.servlet;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import com.kero99.ygc.entity.TbUsers;import com.kero99.ygc.pojo.MsgPageData;import com.kero99.ygc.service.TbMsgService;import com.kero99.ygc.service.TbUsersService;import com.kero99.ygc.service.impl.TbMsgServiceImpl;import com.kero99.ygc.service.impl.TbUsersServiceImpl;public class TbMsgServlet extends BaseServlet { private TbUsers users; private TbMsgService msgService; public TbMsgServlet() { msgService=new TbMsgServiceImpl(); } @Override public void init() throws ServletException { // TODO Auto-generated method stub super.init(); } @Override public void destroy() { // TODO Auto-generated method stub super.destroy(); } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); String type=request.getParameter("type"); if(type.equals("paging")){ paging(request, response); } } public void paging(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{ HttpSession session=request.getSession(); TbUsers users=(TbUsers) session.getAttribute("users"); int pageIndex=1; try { pageIndex=Integer.parseInt(request.getParameter("pageIndex")); } catch (Exception e) { System.err.println("获取页码失败!默认访问首页"); }// 改进版本 int pageIndex = request.getParameter("pageIndex")==null?1:Integer.parseInt(request.getParameter("pageIndex")); MsgPageData pageData=new MsgPageData(); pageData.setPageIndex(pageIndex); pageData.setUsers(users); pageData=msgService.queryPage(pageData); request.setAttribute("pageData", pageData); request.getRequestDispatcher("info.jsp").forward(request, response); } public TbUsers getUsers() { return users; } public void setUsers(TbUsers users) { this.users = users; } public TbMsgService getMsgService() { return msgService; } public void setMsgService(TbMsgService msgService) { this.msgService = msgService; }}
0 0
- java实现用户分页消息功能
- java-实现分页功能
- Java分页功能实现
- 分页功能的java实现
- java中实现分页功能
- JAVA、jsp、数据库实现分页浏览功能
- java调用存储过程实现分页功能
- java后台如何实现页面分页功能
- java初级简单分页功能实现
- Java中如何实现分页功能
- JAVA中实现消息提示功能代码
- JAVA中实现消息提示功能代码 .
- 实现分页打印功能:
- php 实现分页功能
- 分页功能的实现
- PHP_实现分页功能
- PHP_实现分页功能
- ListView实现分页功能
- Retrofit+Rxjava+SqlBrite+SqlDelight实现多文件断点续传下载
- Android ProgressDialog使用
- 升级到SPRING 4.*后,JACKSON的包改变
- Android 联系人的读取,查询,添加
- Java final关键字
- java实现用户分页消息功能
- 最短路径—Dijkstra算法和Floyd算法
- springmvc requestbody 返回json 乱码问题
- axis开发webservice
- OpenStack与SDN控制器的集成
- 【脚本语言系列】关于Python机器学习scikits-learn,你需要知道的事
- Python的虚拟环境virtualenv
- 解决ECShop transport.js与jQuery冲突
- 关于java线程的经典面试题。主线程子线程交替执行n次