搜索
首页Javajava教程Java 中的分页

Java 分页概念用于在带有第一页、第二页、第三页、第四页等按钮或链接的页面之间移动。分页的主要座右铭是通过单击链接或按钮立即在内容之间移动。 Java分页为第一页、第二页、第三页、第四页等提供了多个链接或按钮。用Java创建第一页、第二页、第三页、第四页等按钮;我们有 Servlet 来实现这一点。

什么是 Bootstrap 寻呼机?

Java分页概念是根据客户需求使用第一页、第二页、第三页、第四页等按钮或更多链接或按钮来访问内容,以顺利访问内容。

广告 该类别中的热门课程 JAVA 掌握 - 专业化 | 78 课程系列 | 15 次模拟测试

为什么我们使用 JavaScript 分页?

下面显示了我们为什么使用 JavaScript 分页:

实时场景:

让我们以亚马逊网站或 Flipkart 网站为例,用于显示其数据库中的可用产品。假设他们有 100 万种产品。如果他们试图一次展示所有商品,顾客必须等待更多时间(例如一天)才能看到所有商品列表。

我们应该如何应对这种情况?

  • 我们可以使用链接按钮列表一次向他们显示 50 到 100 个项目,而不是一次显示所有项目。
  • 如果顾客对前 50 到 100 件产品不满意,那么他将转向接下来的 50 到 100 件产品,依此类推。这个概念称为分页。

逐步创建分页项目

  1. 使用 setter 和 getter 创建任何类,以将值添加到列表中。
  2. 为分页逻辑创建 Servlet 类。
  3. 创建一个类以将列表值添加到任何数据库,以便在输出视图页面上查看这些值。
注意:这里使用MySQL数据库;确保您的 PC 上必须安装 MySQL 服务器。使用 mysql-connector-java.jar 文件来运行 MySQL 数据库代码。

      4. 创建一个 HTML 视图页面用于查看分页。

语法:

Servlet 语法:

//create a setter and getter class
public class Customer {
private int id;
private String name;
private float salary;
//setters and getters
}
//for pagination logic in servlet class
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter printWriterOut=response.getWriter();
String stringPageNumber=request.getParameter("page");
int paginationPageID=Integer.parseInt(stringPageNumber);
int toalCount=pageNumbers;
if(paginationPageID==1){}
else{
paginationPageID=paginationPageID-1;
paginationPageID=paginationPageID*toalCount+1;
}
}
//database connection for getting customer values
public static Connection getConnection(){
Connection con=null;
try{
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","root");
}catch(Exception e){System.out.println(e);}
return con;
}
//view output html page

<div class="a">
<a href="PaginationServlet?page=1">View Customer Details</a>
</div>

Java 分页示例

上面提到的每个步骤我们都作为一个例子来更好地理解。完成所有示例后,您的项目结构在 Eclipse 中必须如下所示;否则可能无法工作。

创建一个动态 Web 项目并添加以下所有示例,如下所示:

Java 中的分页

注意:使用 Apache Tomcat 服务器 7.0。

示例#1

创建客户类别。

Java 代码:Customer.java

package com.pagination.setget;
public class Customer {
private int id;
private String name;
private float salary;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public float getSalary() {
return salary;
}
public void setSalary(float salary) {
this.salary = salary;
}
}

示例#2

为分页逻辑创建 servlet 类。

Java Servlet 代码:Pagination.java

package com.pagination.view;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.pagination.main.Pagination;
import com.pagination.setget.*;
@SuppressWarnings("serial")
@WebServlet("/PaginationServlet")
public class ViewPagination extends HttpServlet {
protected void doGet(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws ServletException, IOException {
httpServletResponse.setContentType("text/html");
PrintWriter printWriterOut=httpServletResponse.getWriter();
String stringPageNumber=httpServletRequest.getParameter("page");
int paginationPageID=Integer.parseInt(stringPageNumber);
int toalCount=5;
if(paginationPageID==1){}
else{
paginationPageID=paginationPageID-1;
paginationPageID=paginationPageID*toalCount+1;
}
List<customer> customerList=Pagination.getRecords(paginationPageID,toalCount);
printWriterOut.print("<h2 id="Introduction-to-Servlet-Pagination">Introduction to Servlet Pagination</h2>");
printWriterOut.print("<h3 id="Customer-Details-in-Table-Format">Customer Details in Table Format</h3>");
printWriterOut.print("<h1 id="We-are-in-Page-number-gt-stringPageNumber">We are in Page number=>"+stringPageNumber+"</h1>");
printWriterOut.print("<table style="color:navy" border="2" cellpadding="4" width="80%">");
printWriterOut.print("<tr>
<th>Customer ID</th>
<th>Customer Name</th>
<th>Customer Salary</th>");
for(Customer customer:customerList){
printWriterOut.print("</tr>
<tr>
<td>"+customer.getId()+"</td>
<td>"+customer.getName()+"</td>
<td>"+customer.getSalary()+"</td>
</tr>");
}
printWriterOut.print("</table>");
printWriterOut.print("<a href="PaginationServlet?page=1">First Page||</a> ");
printWriterOut.print("<a href="PaginationServlet?page=2">Second Page||</a> ");
printWriterOut.print("<a href="PaginationServlet?page=3">Third Page||</a> ");
printWriterOut.print("<a href="PaginationServlet?page=4">Fourth Page||</a> ");
printWriterOut.print("<a href="PaginationServlet?page=5">Fifth Page</a> ");
printWriterOut.close();
}
}</customer>

示例#3

创建 MySQL 数据库代码来保存列表值。

Java 代码:MySQLPagination.java

package com.pagination.main;
import com.pagination.setget.*;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class Pagination {
public static Connection getConnection(){
Connection connection=null;
try{
Class.forName("com.mysql.jdbc.Driver");
connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","root");
}catch(Exception e){System.out.println(e);}
return connection;
}
public static List<customer> getRecords(int start,int total){
List<customer> list=new ArrayList<customer>();
try{
Connection connection=getConnection();
PreparedStatement preparedStatement=connection.prepareStatement("select * from customer limit "+(start-1)+","+total);
ResultSet rs=preparedStatement.executeQuery();
while(rs.next()){
Customer customer=new Customer();
customer.setId(rs.getInt(1));
customer.setName(rs.getString(2));
customer.setSalary(rs.getFloat(3));
list.add(customer);
}
connection.close();
}catch(Exception e){System.out.println(e);}
return list;
}
}</customer></customer></customer>

示例#4

查看 HTML 页面。

HTML 代码:ViewPagination.html



<meta charset="ISO-8859-1">
<title>Pagination</title>
<style type="text/css">
.a {
text-align: center;
}
</style>


<div class="a">
<a href="PaginationServlet?page=1">View Customer Details</a>
</div>

输出:

Java 中的分页

Java 中的分页

说明:

  • 在第一个示例中,我们创建了一个 Customer setter 和 getter 类。
  • 在第二个示例中,我们创建了 Pagination servlet 类来添加分页逻辑。
  • 在第三个示例中,我们创建了一个 MySQL 数据库,用于添加列表值以在分页视图中显示。
  • 在第四个示例中,我们使用 HTML 页面创建了一个视图页面。

结论 – Java 中的分页

Java 的分页用于通过按钮或链接立即在页面之间移动。 Java 中的分页可以通过 Servlet 和 HTML 来完成,也可以使用 MySQL jar 文件来完成。

以上是Java 中的分页的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
JVM如何处理操作系统API的差异?JVM如何处理操作系统API的差异?Apr 27, 2025 am 12:18 AM

JVM通过JavaNativeInterface(JNI)和Java标准库处理操作系统API差异:1.JNI允许Java代码调用本地代码,直接与操作系统API交互。2.Java标准库提供统一API,内部映射到不同操作系统API,确保代码跨平台运行。

Java 9影响平台独立性中引入的模块化如何?Java 9影响平台独立性中引入的模块化如何?Apr 27, 2025 am 12:15 AM

modularitydoesnotdirectlyaffectJava'splatformindependence.Java'splatformindependenceismaintainedbytheJVM,butmodularityinfluencesapplicationstructureandmanagement,indirectlyimpactingplatformindependence.1)Deploymentanddistributionbecomemoreefficientwi

什么是字节码,它与Java的平台独立性有何关系?什么是字节码,它与Java的平台独立性有何关系?Apr 27, 2025 am 12:06 AM

BytecodeinJavaistheintermediaterepresentationthatenablesplatformindependence.1)Javacodeiscompiledintobytecodestoredin.classfiles.2)TheJVMinterpretsorcompilesthisbytecodeintomachinecodeatruntime,allowingthesamebytecodetorunonanydevicewithaJVM,thusfulf

为什么Java被认为是一种独立于平台的语言?为什么Java被认为是一种独立于平台的语言?Apr 27, 2025 am 12:03 AM

javaachievesplatformIndependencEthroughThoJavavIrtualMachine(JVM),wodecutesbytecodeonyanydenanydevicewithajvm.1)javacodeiscompiledintobytecode.2)

图形用户界面(GUIS)如何提出Java平台独立性的挑战?图形用户界面(GUIS)如何提出Java平台独立性的挑战?Apr 27, 2025 am 12:02 AM

JavaGUI开发中的平台独立性面临挑战,但可以通过使用Swing、JavaFX,统一外观,性能优化,第三方库和跨平台测试来应对。JavaGUI开发依赖于AWT和Swing,Swing旨在提供跨平台一致性,但实际效果因操作系统不同而异。解决方案包括:1)使用Swing和JavaFX作为GUI工具包;2)通过UIManager.setLookAndFeel()统一外观;3)优化性能以适应不同平台;4)使用如ApachePivot或SWT的第三方库;5)进行跨平台测试以确保一致性。

Java开发的哪些方面取决于平台?Java开发的哪些方面取决于平台?Apr 26, 2025 am 12:19 AM

JavadevelovermentIrelyPlatForm-DeTueTososeVeralFactors.1)JVMVariationsAffectPerformanceNandBehaviorAcroSsdifferentos.2)Nativelibrariesviajnijniiniininiinniinindrododerplatefform.3)

在不同平台上运行Java代码时是否存在性能差异?为什么?在不同平台上运行Java代码时是否存在性能差异?为什么?Apr 26, 2025 am 12:15 AM

Java代码在不同平台上运行时会有性能差异。1)JVM的实现和优化策略不同,如OracleJDK和OpenJDK。2)操作系统的特性,如内存管理和线程调度,也会影响性能。3)可以通过选择合适的JVM、调整JVM参数和代码优化来提升性能。

Java平台独立性有什么局限性?Java平台独立性有什么局限性?Apr 26, 2025 am 12:10 AM

Java'splatFormentenceHaslimitations不包括PerformanceOverhead,versionCompatibilityIsissues,挑战WithnativelibraryIntegration,Platform-SpecificFeatures,andjvminstallation/jvminstallation/jvmintenance/jeartenance.therefactorscomplicatorscomplicatethe“ writeOnce”

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用