当前位置:编程学习 > JSP >>

求jsp页面实现分页显示数据库查询内容 代码

具体的是http://apps.hi.zzzyk.com/share/detail/16843724 中“首页 第一页,下一页 末页”等代码部分
补充:我就是想知道 这个网站上说的。但是网站上只给出一部分代码,求另外一部分!
追问:
bighouse2006@sina.com
刚看到,已发。
答案:邮箱留下,给你发过去。
其他:如果是学习jsp的话,我建议还是找一些其它的文章,其实分页显示采用mvc的模式相当简单,也就是bean ,servlet ,jsp,我想如果你懂了这个的话你就不需要再找剩下的那部分代码了,好好看一下,祝你成功。 这个是有条件查询的分页 
<%@ page language="java" pageEncoding="UTF-8"%>
<%@page import="java.sql.*"%>
<%@page import="java.util.*" %>
<%@page import="entity.Stu"%>
<script>
</script>
<html>
	<title>分页显示(jsp)</title>
	<body>
		<%! 
			int pageSize = 5;//每页显示的记录数 
		    int pageCount = 0;//总页数%>
		<%
			int ageS=0;//开始年龄
			int ageE=0;//结束年龄
			if(request.getParameter("ageS")==null){//判断request里是否有ageS,没有:给ageS赋值并把其放到session里
				ageS=18;
				session.setAttribute("ageS",ageS);
			}else{										//有的话,再对session里的进行判断
				if(!session.getAttribute("ageS").equals(request.getParameter("ageS"))){ //如果session里的值和request里的值不同
					ageS=Integer.parseInt(request.getParameter("ageS").toString());//那么把request里的值赋值给ageS,并放进session里
					session.setAttribute("ageS",request.getParameter("ageS"));
				}else{
					ageS=Integer.parseInt(session.getAttribute("ageS").toString());//否则 ageS直接从session里读取
				}
			}
			if(request.getParameter("ageE")==null){
				ageE=25;
				session.setAttribute("ageE",ageE);
			}else{
				if(!session.getAttribute("ageE").equals(request.getParameter("ageE"))){
					ageE=Integer.parseInt(request.getParameter("ageE").toString());
					session.setAttribute("ageE",request.getParameter("ageE"));
				}else{
					ageE=Integer.parseInt(session.getAttribute("ageE").toString());
				}
			}
			Connection conn = null;
			String driver = "oracle.jdbc.driver.OracleDriver";
			String url = "jdbc:oracle:thin:@localhost:1521:orcl";
			try {
				Class.forName(driver);
				conn = DriverManager.getConnection(url, "system", "zhu");
				PreparedStatement st=conn.prepareStatement("select * from stu where age>="+ageS+" and age<= "+ageE+" order by sid",
				ResultSet.TYPE_SCROLL_SENSITIVE,
				ResultSet.CONCUR_READ_ONLY);//可滚动查询数据的结果集
				ResultSet rs = st.executeQuery();
				
				rs.last();//让游标到表中的最后一行
				int rowCount = rs.getRow();//获取记录总数
				//out.print("记录总数为 :"+rowCount);
				//总也数的计算公式
				pageCount = (rowCount % pageSize == 0) ? (rowCount / pageSize)
						: (rowCount / pageSize + 1);
				int showPage = 1;//当前页
		%>

		<%
			//取得用户指定的页
				String goTOPage = request.getParameter("showPage");
				if (goTOPage == null) {
					goTOPage = "1";
				}
				try {
					showPage = Integer.parseInt(goTOPage);
				} catch (NumberFormatException e) {
					showPage = 1;
				}
				//当页面小于等于第一页。按第一页算 如果大于等于总页数。按最后一页算
				if (showPage <= 1) {
					showPage = 1;
				} else if (showPage >= pageCount) {
					showPage = pageCount;
				}

				//游标的位置(当前页-1)×每页显示的记录数+1
				int posion = (showPage - 1) * pageSize + 1;
				//设置游标的位置
				rs.absolute(posion);
				
		%>
		<form action="" method="get">    年龄段:<input type="text" value="<%=ageS %>"  name="ageS"/>——<input type="text" value="<%=ageE %>"  name="ageE"/> 
			<input type="submit" value="查询"/>
		
		<table border="1" cellpadding="0" cellspacing="0">
			<tr>
				<td>序号</td>
				<td>
					编号
				</td>
				<td>
					姓名
				</td>
				<td>
					年龄
				</td>
			</tr>
			<%
				int num=showPage*pageSize-4;
				int i = 0;
					//循环显示表中的数据pageSize(每页显示的记录)
					//rs.isAfterLase()游标是否在最后一行之后 说明后面已经没有记录
					while (i < pageSize && !rs.isAfterLast()) {
			%>
			<tr>
				<td>
					<%=num %>
				</td>
				<td>
					<%=rs.getInt("sid") %>
				</td>
				<td>
					<%=rs.getString("sname") %>
				</td>
				<td><%=rs.getInt("age") %>
				</td>
			</tr>
			<%
				rs.next();
						i++;
						num++;
					}
			%>
		</table>
			<table width="1000">

				<tr style=" vertical-align:middle;">
					<td>
						<a href="page1.jsp?ageS=<%=ageS %>&ageE=<%=ageE %>&showPage=1">首页</a>
					</td>
					
					<td>
						<%
							if (showPage > 1) {
						%>
						<a href="page1.jsp?ageS=<%=ageS %>&ageE=<%=ageE %>&showPage=<%=showPage - 1%>">上一页</a>
						<%
							}else{
						%>
							上一页
						<%} %>
					</td>
					<td>
						<%
							if (showPage < pageCount) {
						%>
						<a href="page1.jsp?ageS=<%=ageS %>&ageE=<%=ageE %>&showPage=<%=showPage + 1%>">下一页</a>
						<%
							}else{
						%>
							下一页
						<%} %>
					</td>
					<td>
						<a href="page1.jsp?ageS=<%=ageS %>&ageE=<%=ageE %>&showPage=<%=pageCount%>">尾页</a>
					</td>
					<td>
						共<%=pageCount%>页
					</td>
					<td>
						第<%=showPage%>页
					</td>
				</tr>
			</table>
		</form>
		<%
			conn.close();
			} catch (ClassNotFoundException e1) {
				out.print(e1.getMessage());
			} catch (SQLException e2) {
				out.print(e2.getMessage());
			}
		%>
	</body>
</html>

上一个:在JSP中写代码,实现过两秒中更换一张特定路径下的图片,3-5张左右。
下一个:用eclipse开发,将网页index.jsp的源代码作为一个变量,传到另外一个页面中显示。

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,