问题描述
这是JSP页面代码:<%@pagelanguage="java"contentType="text/html;charset=gbk"pageEncoding="GBk"%><%@pageimport="com.etc.sky.entity.Record"%><%@pageimport="java.util.*"%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><title>人力资源管理系统</title><metahttp-equiv="Content-Type"content="text/html;charset=GBK"><linkhref="css/css.css"rel="stylesheet"type="text/css"></head><body><%List<Record>list=(List<Record>)request.getAttribute("Record");%><tablewidth="100%"border="1"align="center"cellpadding="0"cellspacing="1"bordercolorlight="#CCCCCC"bordercolor="#FFFFFF"bordercolordark="#FFFFFF"><tr><tdheight="22"colspan="9"align="left"><strongclass="text13">人才信息</strong></td></tr><trclass="tdhui"><tdwidth="7%"align="center">履历ID</td><tdwidth="10%"height="22"align="center">员工ID</td><tdwidth="10%"height="22"align="center">员工姓名</td><tdwidth="5%"height="22"align="center">职位</td><tdwidth="5%"height="22"align="center">学历</td><tdwidth="17%"height="22"align="center">工作内容</td><tdwidth="16%"height="22"align="center">开始时间</td><tdwidth="16%"height="22"align="center">结束时间</td><tdwidth="9%"align="center">部门</td><tdwidth="20%"height="22"align="center">执行操作</td></tr><%for(inti=0;i<list.size();i++){Records=(Record)list.get(i);%><tr><tdalign="center"><%=s.getRecordId()%></td><tdalign="center"><%=s.getPerId()%></td><tdheight="22"align="center"><%=s.getPerName()%></td><tdheight="22"align="center"><%=s.getDuties()%></td><tdheight="22"align="center"><%=s.getEducation()%></td><tdheight="22"align="center"><%=s.getJobContent()%></td><tdheight="22"align="center"><%=s.getStartTime()%><!--#BeginDateformat:Ch2--><!--#EndDate--></td><tdheight="22"align="center"><%=s.getEndTime()%><!--#BeginDateformat:Ch2--><!--#EndDate--></td><tdalign="center"><%=s.getDepartment()%></td><td><ahref="/personManager/updateRecordAll?methodcode=queryRecordById&recordId=<%=s.getRecordId()%>">修改</a> <ahref="/personManager/deleteRecordServlet?methodcode=deleteRecordById&recordId=<%=s.getRecordId()%>">删除</a></td></tr><%}%></table></body></html>这是在DAO层定义的方法:publicList<Record>queryAll();这是在DAO实现中实现的方法,实现的DAO层的接口:publicList<Record>queryAll(){List<Record>list=newArrayList<Record>();Connectionconn=JDBCConnectionFactory.getConnestion();try{Statementstmt=conn.createStatement();ResultSetrs=stmt.executeQuery("select*fromtb_record");while(rs.next()){list.add(newRecord(rs.getInt(1),rs.getInt(2),rs.getString(3),rs.getString(4),rs.getString(5),rs.getString(6),rs.getString(7),rs.getString(8),rs.getString(9)));}}catch(Exceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}finally{if(conn!=null){try{conn.close();}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}}returnlist;}这是在service实现层中调用DAO实现层的方法:publicList<Record>queryAll(){returnduser.queryAll();}这是servlet,调用的service中的方法,返回一个Listpackagecom.etc.sky.controller;importjava.io.IOException;importjava.io.PrintWriter;importjava.util.List;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importcom.etc.sky.entity.Rec;importcom.etc.sky.entity.Record;importcom.etc.sky.serimpl.SDuser;importcom.etc.sky.serimpl.SUser;publicclassSelectRecordServletextendsHttpServlet{publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{doPost(request,response);}publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{request.setCharacterEncoding("GBK");response.setCharacterEncoding("GBK");SUsersuser=newSUser();List<Record>list=suser.queryAll();request.setAttribute("Record",list);request.getRequestDispatcher("record.jsp").forward(request,response);}}现在要将数据库查询的数据进行分页查询,哪位大神帮我看下,怎么分页,网上的教程看不懂,谢谢啦。
解决方案
解决方案二:
百度吧!网上很多的分页!
解决方案三:
先网上找个小例子然后照着写吧,原理是:每次查询出来显示一页需要的信息,放在页面上显示,并且显示上一页,下一页,或者跳页这些选择,发送的请求是查找第几页需要的数据。比如正在显示第2页,点下一页就是查找第三页需要显示的数据,
解决方案四:
--Oracle分页算法一select*from(selectpage.*,rownumrnfrom(select*fromhelp)page--20=(currentPage-1)*pageSize+pageSizewhererownum<=20)--10=(currentPage-1)*pageSizewherern>10;--Oralce分页算法二--20=(currentPage-1)*pageSize+pageSizeselect*fromhelpwhererownum<=20minus--10=(currentPage-1)*pageSizeselect*fromhelpwhererownum<=10;
解决方案五:
用我的代码帮我改下,真的不会啊。。。来人啊。。。
解决方案六:
改完发我邮箱,384644268@qq.com
解决方案七:
该回复于2012-10-17 08:30:18被版主删除
解决方案八:
谢谢啊,懂的人帮我看下这个SQL语句怎么解释Stringsql="select*from(selectinner.*,rownumasnoFROM(select*fromt_emp"+"whererownum<=?andempstatenotin(0))inner)whereno>?";
解决方案九:
你这个代码是指当前页面中显示的数据从第几条开始到第几条结束。
解决方案十:
引用7楼xhw19910301的回复:
谢谢啊,懂的人帮我看下这个SQL语句怎么解释Stringsql="select*from(selectinner.*,rownumasnoFROM(select*fromt_emp"+"whererownum<=?andempstatenotin(0))inner)whereno>?";
这个就是分页,不是一次分页不是一次查出全部而是从几条到第几条一次查出10或者100条你只需要把?赋值为比如说0到10
解决方案十一:
rownum 是Oracle特有的,意思就是在你查询出来的数据集中有一个从1开始算起的列,既你查询出来的数据如果有10条,那么rownum 就是1-10顺序显示,它其实就是个序号