Dieser Artikel beschreibt die Methode von Struts2+Hibernate, um Datenpaging zu implementieren. Teilen Sie es für Ihre Referenz wie folgt weiter:
1. Hibernate verwenden, um die Paging -Technologie zu implementieren:
/*** Verwenden Sie eine HQL -Anweisung für Seite Abfrage* @param HQL HQL Anweisung, die Abfrage sein muss HibernateCallback -Objektlisteliste = Gethibernatetemplate () .executeFind (New HibernateCallback () {// Methoden, die in der HibernateCallback -Schnittstelle implementiert werden müssen. .SetFirStresult (Offset). Rückgabeliste;} // Erhalten Sie die Gesamtzahl der Datensätze public int getRows (String HQL) {return gethibernatetemplate (). Find (HQL) .SIZE ();}2. Rufen Sie den Winterschlaf auf, um die Paging -Technologie in Aktion zu implementieren und zur Anzeigeschnittstelle zu springen:
// paging @SuppressWarnings ("Deaktiviert") public String paging () {String hql = "From Income"; // Paging Datentabelle int pageSize = 3; // Anzahl der pro Seite angezeigten Datensätze int allrows = service.getrows (HQL); // Total Records int allpage = 0; // Gesamtseiten int offset = getPage () + 1; // Index des ersten Datensatzes/*if (Zeilen % Größe! = 0) {pageSize = Zeilen/ Größe + 1; } else {pageSize = Zeilen / Größe; }* / allPage = (Allrows - 1) / pageSize + 1; // Berechnen Sie die Gesamtzahl der Seitenliste <einkommen> Einkommen = Service.FindBypage (HQL, (Offset-1)*PageSize, PageSize); Request.SetAttribute ("AllPage", AllPage); request.setAttribute ("offset", offset); Request.SetAttribute ("Einkommen", Einkommen); zurück "paging";}3.Struts.xml Konfiguration:
<Action name = "Einkommen"> <!-Die Seite der Ansicht für zwei logische Ansichten konfigurieren-> <Ergebnisname = "Fehler">/error.jsp </result> <result name = "paging">/einkommen/resoled.jsp </result> <result name = "updit">/einkommen/einkommen_edit.jsp </result> </result>
4. Anzeigen der Schnittstelle retching_list.jsp
<%@ page Language = "Java" pageCoding = "gbk"%> <%@ taglib prefix = "fmt" uri = "http://java.sun.com/jsp/jstl/fmt"%> <%@ taglib prefix = "s" s "s" s "s" s " "-//W3C//DTD HTML 4.01 Transitional//EN"><head> <title>Revenue List</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <link rel="stylesheet" type="text/css" href="../images/styles.css"></head><body> <div> <table cellpadding="0" cellpacing="0" Align = "Center"> <tr> <td> ・ Aktueller Standort: Revenue Management >> Umsatz anzeigen </td> </tr> <tr> <td bgcolor = "#ffffff"> <br> <table Align = "center" cellpadding = "1" cellpacing = "1" bgColor = "#036500" Bordercolor = " bgcolor = "#fffff"> <td align = "center"> Einkommensnummer </td> <td align = "center"> Datum </td> <td align = "center"> methode </td> <td align = "zentrum"> seng </td> <td align = "center"> project </td> <td> <td aga " - project </td> <td> </td> <td> </td> <td> <Td> <td> <Td> <Td> <Td> <td Align =" center "> center"> project </td> <td> <td> <td align = "central Align = "Center"> Align = "Center"> Personal </td> <td align = "center"> Hinweis </td> <td align = "center"> operation </td> </tr> <s: iterator value = "#request.income"> <tr bgcolor = "#ffffff"> <tdd align = " Align = "Center"> <s: Datumsname = "Datum" format = "yyyy-mm-dd"/> </td> <td align = "center"> <s: Eigenschaftswert = "Geld"/> </td> <td align = "center"> <s: Property Value = "Project"/> </td> <td Align = "Center"> <S. Align = "Center"> <s: Eigenschaftswert = "Personal"/> </td> <td align = "center"> <s: Eigenschaftswert = "Remarks"/> </td> <td align = "center"> <s: Eigenschaftswert = "rägt"/> </td> <td align = "center"> <a you you you you you you you you you $ {id}? ')) location =' Einkommen! del? id = $ {id} '"> delete </a> <a href =" javaScript: if (bestätigen (' Sind Sie sicher, dass Sie $ {id}? ') location =' Einkommen! Updateto -Id = $ {id} '">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">"> ">" up> </td> </td> </td> </td> </td> </td> </td> </td> </td>: <center> Es gibt insgesamt $ {AllPage} Seiten, derzeit die $ {offset} Seite <a href = "Einkommen! Paging? Seite = 0"> <font size = "2" color = "blue"> home </font> </a> <a href = "javaScript: if ($ {{Offset} 1)} 1). size = "2" color = "rot"> vorherige Seite </font> </a> <a href = "javaScript: if ($ {offset} <$ {allpage}) location = 'Einkommen! Paging? Page = $ {Page+1}'" href = "Einkommen! Paging? Seite = $ {AllPage-1}"> <font size = "2" color = "blau"> Letzte Seite </font> </a> </td> </tr> </table> </div> </body>5. Paginierungsergebnisse:
Dieser Artikel enthält keine Implementierungen in der zugrunde liegenden Datenbank, aber solange Sie das Paging -Prinzip beherrschen, glaube ich, dass dies kein großes Problem ist. Für bestimmte Paging -Prinzipien finden Sie im vorherigen Artikel: "Analyse der Beispiele für Hibernate -Framework -Daten Paging -Technologie".
Ich hoffe, dass die Beschreibung in diesem Artikel für Java -Programme aller hilfreich ist, die auf dem Hibernate -Framework basieren.