使用MySQL数据库,用户名root,密码为空,新建数据库名为lin_0917,新建表名为person,表中字段为:ID,NAME,PASSWORD。
示例为每页显示15条记录
JSP代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<html>
<head>
<title>My JSP 'Jdbc2.jsp' starting page</title>
</head>
<body>
<center>
<h1>
人员列表
</h1>
<hr />
<br />
<%!final String jspurl = "Jdbc2.jsp";%>
<%
int linesize = 15;
int currentpage = 1;
int alldata = 100;
int pagesize = 0;
pagesize = (alldata + linesize - 1) / linesize;
%>
总页数为
<%=pagesize%>页
<%
try {
currentpage = Integer.parseInt(request.getParameter("cp"));
} catch (Exception e) {
}
%>
<%
String driverName = "com.mysql.jdbc.Driver";
String userName = "root";
String userPasswd = "";
String dbName = "lin_0917";
String tableName = "person";
String url = "jdbc:mysql://localhost/" + dbName + "?user="
+ userName + "&password=" + userPasswd;
%>
<%
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection connection = DriverManager.getConnection(url);
Statement statement = connection.createStatement();
String sql2 = "select count(ID) from person";
ResultSet rs2 = statement.executeQuery(sql2);
if (rs2.next()) {
alldata = rs2.getInt(1);
}
rs2.close();
String sql = "select ID,NAME,PASSWORD from person";
ResultSet rs = statement.executeQuery(sql);
ResultSetMetaData rmeta = rs.getMetaData();
%>
数据库中记录总数为:<%=alldata%>
当前页:
<%=currentpage%>/<%=pagesize%>
<script type="text/javascript">
function openpage(curpage)
{
document.form1.cp.value = curpage;
document.form1.submit();
}
function jumpto(){
document.form1.cp.value = document.form1.jump.value;
document.form1.submit();
}
</script>
<form action="<%=jspurl%>" name="form1">
<input type="button" value="上一页"
οnclick="openpage(<%=currentpage - 1%>)"
<%=currentpage == 1 ? "disabled" : ""%>>
<input type="button" value="首页 " οnclick="openpage(1)"
<%=currentpage == 1 ? "disabled" : ""%>>
<input type="button" value="尾页" οnclick="openpage(<%=pagesize%>)"
<%=currentpage == pagesize ? "disabled" : ""%>>
<input type="button" value="下一页"
οnclick="openpage(<%=currentpage + 1%>)"
<%=currentpage == pagesize ? "disabled" : ""%>>
<input type="hidden" name="cp" value="">
跳到第
<select name="jump" οnchange="jumpto()">
<%
for (int i = 1; i <= pagesize; i++) {
%>
<option value="<%=i%>" <%=currentpage == i ? "selected" : ""%>><%=i%></option>
<%
}
%>
</select>
页
</form>
<table border="1" width="80%">
<tr>
<td>
编号
</td>
<td>
登录名称
</td>
<td>
密码
</td>
<td colspan="2">
操作
</td>
</tr>
<%
int i = 0;
for (int x = 0; x < (currentpage - 1) * linesize; x++) {
rs.next();
}
for (int x = 0; x < linesize; x++) {
if (rs.next()) {
i++;
int id = rs.getInt(1);
String name = rs.getString(2);
String password = rs.getString(3);
%>
<tr>
<td>
<%=id%>
</td>
<td>
<%=name%>
</td>
<td>
<%=password%>
</td>
<td>
更新
</td>
<td>
删除
</td>
</tr>
<%
}
}
rs.close();
statement.close();
connection.close();
if (i == 0) {
%>
<tr>
<td colspan="5">
数据库中没有数据
</td>
</tr>
<%
}
%>
</table>
<%
} catch (Exception e) {
%>
<h2>
系统出错!!!
</h2>
<%
}
%>
</center>
</body>
</html>
效果:
效果:
效果:
在JSP中实现分页显示(假分页)
原创
©著作权归作者所有:来自51CTO博客作者1058106015的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:servlet的妙用-权限控制
下一篇:君生我未生,我生君已老
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
jsp页面中实现分页效果
先看一哈效果 实现思路 本人使用的oracle数据库首先 Dao中的sql语句SELECT * FROM(SELECT ROWNUM AS RID ,C.* FR
jsp页面中实现分页效果 jsp分页 分页 结果集 sql