代码是这样的,这个是没分页的:怎么分页啊!!还有一个问题,我在网上也查了很多,发现很多的分页代码都不是我想的那样,我想的是这样的:假若数据库中有三十条记录,我要分三页显示不,可是这个分页到底是个什么机制啊,是不是前十条显示在第一个页面,而第二个十条显示在第二个页面,再依此类推,平时这些网站里面的分页显示一般都是什么样的啊,我发现内容变了之后,它们的页面并没有变啊!! 那这个分页一般是怎么分的,若是第一个方法启不是很麻烦,而且很不科学啊,数据库大的时候,那 如果每次的数据都显示在一个页面,该怎么弄啊,如果实在很麻烦,能不能给点比较重要的提示啊,我发现还真不好写啊,或者是我的这个想法根本就是错的,如果是错的,那分页思想到底是。
还有这个jsp中数据库的连接,连接数据库的代码是入在jsp页面内合理一些,还是放在javabean中合理一些啊,很多人说放在JAVABEAN中合理一些,只是我发现这样之后对数据库的操作很不方便啊,难到这个地方还有什么特别的方法不成?各位大虾们请指点!!谢谢!! <%@ page language="java" contentType="text/html; charset=gb2312"%>
<%@ page import="java.sql.*" %>
<%@ page import="data.data" %>
<%@ include file="include.jsp" %>
<html>
<head>
<style type="text/css">
<!-- body{
text-align:center;
}
#conterner{
width:800px;
height:1000px;
background-color:#ffffcc;
}
//-->
</style>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>商品列表</title>
</head><body>
<div id="conterner">
<%
try{
Class.forName(classforname);
Connection connection = DriverManager.getConnection(url,user,pwd);
Statement statement=connection.createStatement();
ResultSet resultset = statement.executeQuery("select * from Goods");
%>
<form method="get" action="">
<table align="center" cellspacing="1"cellpadding="1"border="1"width="30%"bgcolor="#00ffcc">
<tr><td width="10%" align="center">选择</td><td align="center">商品号</td><td align="center">商品名</td></tr>
<%
while(resultset.next()){
%>
<tr><td width="10%" align="center"><input type=checkbox name="id" value="<%=resultset.getString(1) %>"></input></td>
<td ><%=resultset.getString(1) %></td><td ><%=resultset.getString(1) %></td>
</tr>
<%
}
}catch(Exception e){
e.printStackTrace();
}
%>
</table>
</form>
</div>
</body>
</html>
还有这个jsp中数据库的连接,连接数据库的代码是入在jsp页面内合理一些,还是放在javabean中合理一些啊,很多人说放在JAVABEAN中合理一些,只是我发现这样之后对数据库的操作很不方便啊,难到这个地方还有什么特别的方法不成?各位大虾们请指点!!谢谢!! <%@ page language="java" contentType="text/html; charset=gb2312"%>
<%@ page import="java.sql.*" %>
<%@ page import="data.data" %>
<%@ include file="include.jsp" %>
<html>
<head>
<style type="text/css">
<!-- body{
text-align:center;
}
#conterner{
width:800px;
height:1000px;
background-color:#ffffcc;
}
//-->
</style>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>商品列表</title>
</head><body>
<div id="conterner">
<%
try{
Class.forName(classforname);
Connection connection = DriverManager.getConnection(url,user,pwd);
Statement statement=connection.createStatement();
ResultSet resultset = statement.executeQuery("select * from Goods");
%>
<form method="get" action="">
<table align="center" cellspacing="1"cellpadding="1"border="1"width="30%"bgcolor="#00ffcc">
<tr><td width="10%" align="center">选择</td><td align="center">商品号</td><td align="center">商品名</td></tr>
<%
while(resultset.next()){
%>
<tr><td width="10%" align="center"><input type=checkbox name="id" value="<%=resultset.getString(1) %>"></input></td>
<td ><%=resultset.getString(1) %></td><td ><%=resultset.getString(1) %></td>
</tr>
<%
}
}catch(Exception e){
e.printStackTrace();
}
%>
</table>
</form>
</div>
</body>
</html>
常用的有两种
一种用SQL语句分页,适合于大多数情况
另外一种是内存分页,就是把数据一次提取完后放在页面用JS分,或者放在SESSION里用代码分
就以你说的有30条记录为例子
分页显示,每页显示10条,第一页的时候是显示前面10条
而后面20条呢。
当你在页面点下一页的时候重新去数据库查询一次,只要改变一下页码就可以了。看到你说的“是不是前十条显示在第一个页面,而第二个十条显示在第二个页面,再依此类推,平时这些网站里面的分页显示一般都是什么样的啊,我发现内容变了之后,它们的页面并没有变啊!!”你想的是30条数据分3页。查出来的时候就是三个页面?
其实页面的内容都是从数据库来的,一个页面就可以解决。