Java网络开发(Tomcat同步数据分页)—— 用Jsp语法 到 实现数据的分页展示 到 只看自己的数据 + 模糊查询 &; 迭代升级_jsp 模糊查询
以下是一个简化的JSP分页逻辑示例,用于展示如何在JSP页面中实现数据的分页展示。
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.stream.Collectors" %>
<%@ page import="java.util.Collections" %>
<%@ page import="java.util.Comparator" %>
<%@ page import="java.util.Date" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
// 假设这是从数据库获取的所有数据
List<Date> allData = new ArrayList<>();
// 填充数据...
// 每页显示的条目数
int itemsPerPage = 10;
// 当前页码
int currentPage = 1;
// 总页数
int totalPages = (int) Math.ceil(allData.size() / (double) itemsPerPage);
// 如果请求中有页码参数,则用它来设置当前页码
if (request.getParameter("page") != null) {
try {
currentPage = Integer.parseInt(request.getParameter("page"));
if (currentPage < 1 || currentPage > totalPages) {
currentPage = 1;
}
} catch (NumberFormatException e) {
currentPage = 1;
}
}
// 计算当前页数据的起始和结束索引
int fromIndex = (currentPage - 1) * itemsPerPage;
int toIndex = Math.min(fromIndex + itemsPerPage, allData.size());
// 对所有数据进行分页
List<Date> currentPageData = allData.stream()
.skip(fromIndex)
.limit(toIndex - fromIndex)
.collect(Collectors.toList());
// 反转列表以显示最新的数据
Collections.reverse(currentPageData);
%>
<html>
<head>
<title>分页示例</title>
</head>
<body>
<h1>分页示例</h1>
<ul>
<% for (Date data : currentPageData) { %>
<li><%= data.toString() %></li>
<% } %>
</ul>
<% if (currentPage > 1) { %>
<a href="?page=<%= currentPage - 1 %>">上一页</a>
<% } %>
<% for (int i = 1; i <= totalPages; i++) { %>
<a href="?page=<%= i %>"><%= i %></a>
<% } %>
<% if (currentPage < totalPages) { %>
<a href="?page=<%= currentPage + 1 %>">下一页</a>
<% } %>
</body>
</html>
这个示例展示了如何在JSP页面中使用Java代码来处理数据的分页。它首先设置每页显示的数据量,然后根据请求中的页码参数来确定当前页码,并计算出当前页的数据。最后,它在HTML列表中显示当前页的数据,并提供分页导航链接。这个例子简单且直接地展示了分页逻辑,并且可以很容易地被集成到实际的Web应用程序中。
评论已关闭