📄 show.jsp~16~
字号:
<%@ page contentType="text/html;charset=GBK" %>
<%@ page import="java.sql.*"%>
<%@ page import="newsset.Manager" %>
<%!
ResultSet rs = null; //定义记录集对象
ResultSet rsTmp = null;//定义记录集对象
String sql = "";
int PageSize = 4; //定义一页显示记录数
int Page = 1; //定义当前页
int totalPage = 0;//定义总页数
String str = "";
//显示一页内记录模块
public String ShowOnePage(ResultSet rs, int Page, int PageSize) {
str = "";
try {
// 先将记录集指针定位到相应的位置
for(int k=0;k<(Page-1)*PageSize;k++)
rs.next();
}catch(SQLException e) {
}
//显示该页的记录
for(int i=1; i<=PageSize; i++) {
//调用显示一条记录的方法
str += RsToGbook(rs);
try {
//没有记录,结束
if(!rs.next()) break;
}catch(Exception e) {
e.printStackTrace();
}
}
return str;
}
// 显示一条记录子模块
public String RsToGbook( ResultSet rs ) {
String text= "";
try {
text += "<tr>";
text += "<td>" + rs.getString("title") + "</td>";
text += "<td>" + rs.getString("zuozhe") + "</td>";
text += "<td>" + rs.getString("time") + "</td>";
text += "</tr>";
}catch(Exception e) {
e.printStackTrace();
}
return text;
}
%>
<%
Manager m=new Manager();
//获得所有记录
rs=m.selectAll();
%>
<html>
<head>
<title>分页浏览</title>
</head>
<body bgcolor="#FFFFFF" background="show.jpg">
<h2 align="center">新闻信息浏览</h2>
<br><p align="center"><a href="">新闻发布</a> <a href="newsguanli.jsp">新闻管理</a></p>
<hr>
<form method="POST" name="cha" action="selectnews.jsp">
<p align="center">
请选择查询类别:
<select name="cha">
<option value="1">按标题查询</option>
<option value="2">按内容查询</option>
<option value="3">按作者查询</option>
<option value="4">按时间查询</option>
</select>
请输入关键字:
<input type="text" name="c">
<input type="submit" name="ti" value="查询">
</p>
</form>
<center>
<table border="1">
<tr bgcolor=lightblue>
<td>标题</td>
<td>作者</td>
<td>时间</td>
</tr>
<%
//获得记录集总个数
int totalrecord = m.Sum();
//对记录集进行分页 分页数放到totalpage变量中
if(totalrecord % PageSize ==0)
totalPage = totalrecord / PageSize; // 如果是当前页码的整数倍
else
totalPage = (int) Math.floor( totalrecord / PageSize ) + 1; // 如果最后还空余一页
if(totalPage == 0) totalPage = 1;
try {
//通过地址栏或表单获得分页数
if(request.getParameter("Page")==null || request.getParameter("Page").equals(""))
Page = 1;
else
Page = Integer.parseInt(request.getParameter("Page"));
} catch(java.lang.NumberFormatException e) { // 捕获用户从浏览器地址拦直接输入Page=sdfsdfsdf所造成的异常
Page = 1;
}
//判断页码在合理的范围内
if(Page < 1) Page = 1;
if(Page > totalPage) Page = totalPage;
try{
//显示分页页面的内容
if(rs.next())
out.println(ShowOnePage(rs, Page, PageSize));
}catch(Exception e){
}
%>
</table>
<form Action="selectnews.jsp" method="get">
<%
//根据页码数显示第一页、上一页、下一页和最后一页
if(Page != 1) {
out.println("<a href=show.jsp?Page=1>第一页</A>");
out.println("<a href= show.jsp?Page=" + (Page-1) + ">上一页</A>");
}
if(Page != totalPage) {
out.println("<a href= show.jsp?Page=" + (Page+1) + ">下一页</A>");
out.println("<a href= show.jsp?Page=" + totalPage + ">最后一页</A>");
}
try{
rs.close();
}
catch(Exception e){
}
%>
<p>输入页数:<input type="text" name="Page" size="3"> 页数:<font color="red"><%=Page%>/<%=totalPage%></font>
</p>
</form>
</center>
<hr>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -