<thead id="4mj8t"><abbr id="4mj8t"><cite id="4mj8t"></cite></abbr></thead>
  • <delect id="4mj8t"><abbr id="4mj8t"></abbr></delect><code id="4mj8t"><td id="4mj8t"><strong id="4mj8t"></strong></td></code>
      <tfoot id="4mj8t"><dfn id="4mj8t"></dfn></tfoot>

    1. \r\n圖書信息<\/h2>\r\n\r\n書號<\/td>書名<\/td>庫存量<\/td><\/tr>\r\n<\/table>\r\n\r\n\r\n\r\n${person.id}<\/td>\r\n${person.name }<\/td>\r\n${person.number }<\/td>\r\n<\/tr>\r\n<\/c:forEach>\r\n<\/table>\r\n
      \r\n1 }\">\r\n首頁<\/a>\r\n上一頁<\/a>\r\n<\/c:if>\r\n\r\n下一頁<\/a>\r\n末頁<\/a>\r\n<\/c:if>\r\n\r\n共${recordCount}頁  \r\n頁\r\n\r\n<\/h4>\r\n<\/form>\r\n<\/body>\r\n<\/html><\/pre>

      <\/p>\n

      Das Folgende ist ein einfacher Beispielcode für die Java-Web-Paging-Anzeige, der vom Editor eingeführt wurde. Ich hoffe, dass es Ihnen hilfreich sein wird, wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich m?chte mich auch bei Ihnen allen für Ihre Unterstützung der chinesischen PHP-Website bedanken! <\/p>"}

      国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

      Heim 類庫下載 java類庫 Beispielcode für die einfache Java-Web-Paging-Anzeige

      Beispielcode für die einfache Java-Web-Paging-Anzeige

      Nov 01, 2016 am 11:42 AM
      java

      In diesem Artikel werden haupts?chlich die relevanten Informationen zum Beispielcode für die einfache Paging-Anzeige in Java vorgestellt. Der Paging-Effekt wird durch die Berechnung der Gesamtzahl der Seiten und die Abfrage der angegebenen Seitendaten erreicht ben?tigte Freunde k?nnen sich auf

      beziehen. Dieser Artikel verwendet zwei Methoden: (1) Berechnen Sie die Gesamtzahl der Seiten. (2) Fragen Sie die angegebenen Seitendaten ab, um einen einfachen Paging-Effekt zu erzielen.

      Idee: Zun?chst müssen Sie eine Paging-Abfragemethode im DAO-Objekt bereitstellen, um die Daten der angegebenen Seite auf der Pr?sentationsebene zu finden Verwenden Sie EL-Ausdrücke und JSTL, um die Daten abzufragen. Die Seitendaten werden angezeigt.

      Lassen Sie mich Ihnen zuerst die Renderings zeigen:

      Off-Topic: Diese Seite wird angezeigt Es wird unter Verwendung der Designidee ?Pr?sentationsschicht-Kontrollschicht-DAO-Schicht-Datenbank“ implementiert. Wenn es einen Bereich gibt, der verbessert werden muss, werden alle ihn vorbringen und gemeinsam lernen und Fortschritte machen. Kommen wir ohne weiteres zum Thema:

      1. DAO-Schicht – Datenbank

      JDBCUtils Die Klasse wird zum ?ffnen und Schlie?en der Datenbank verwendet. Der Kerncode lautet wie folgt:

      import java.sql.Connection;
      import java.sql.DriverManager;
      import java.sql.PreparedStatement;
      import java.sql.ResultSet;
      import java.sql.SQLException;
      public class JDBCUtils {
      private Connection conn=null;
      private PreparedStatement pstmt=null; 
      /**
      * connect 連接數(shù)據(jù)庫
      * @return
      */
      public Connection connect(){
      String user="root";
      String password="1234";
      String driverClass = "com.mysql.jdbc.Driver";
      String jdbcUrl = "jdbc:mysql://localhost:3306/book";
      try {
      Class.forName(driverClass);
      conn = DriverManager.getConnection(jdbcUrl, user, password);
      } catch (Exception e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
      }
      return conn;
      }
      /**
      * close 關(guān)閉數(shù)據(jù)庫
      * @param conn
      * @param pstmt
      * @param resu
      */
      public void close(Connection conn,PreparedStatement pstmt,ResultSet result){
      if(conn != null){
      try {
      conn.close();
      } catch (SQLException e) {
      // TODO Auto-generated catch block
      }
      }
      if(pstmt != null){
      try {
      pstmt.close();
      } catch (SQLException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
      }
      }
      if(result != null){
      try {
      result.close();
      } catch (SQLException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
      }
      }
      }
      }

      Die Methode getPage() und die Methode listUser( ) in der UserDao-Klasse werden jeweils zur Berechnung der Gesamtzahl der Seiten und der Daten der angegebenen Seite verwendet. Der Kerncode lautet wie folgt:

      import java.sql.Connection;
      import java.sql.PreparedStatement;
      import java.sql.ResultSet;
      import java.sql.SQLException;
      import java.util.ArrayList;
      import java.util.List;
      import com.db.JDBCUtils;
      public class UserDao {
      /**
      * 計算總的頁數(shù)
      * @return
      */
      public int getPage(){
      int recordCount=0,t1=0,t2=0;
      PreparedStatement pstmt=null;
      ResultSet result=null;
      JDBCUtils jdbc=new JDBCUtils();
      Connection conn=jdbc.connect();
      String sql="select count(*) from books";
      try {
      pstmt=conn.prepareStatement(sql);
      result=pstmt.executeQuery();
      result.next();
      recordCount=result.getInt(1);
      t1=recordCount%5;
      t2=recordCount/5;
      } catch (Exception e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
      }finally{
      jdbc.close(conn, pstmt, result);
      }
      if(t1 != 0){
      t2=t2+1;
      }
      return t2;
      }
      /**
      * 查詢指定頁的數(shù)據(jù)
      * @param pageNo
      * @return
      */
      public List<User> listUser(int pageNo){
      PreparedStatement pstmt=null;
      ResultSet result=null;
      List<User> list=new ArrayList<User>();
      int pageSize=5;
      int page=(pageNo-1)*5;
      JDBCUtils jdbc=new JDBCUtils();
      Connection conn=jdbc.connect();
      String sql="select * from books order by id limit ?,?";
      try {
      pstmt=conn.prepareStatement(sql);
      pstmt.setInt(1, page);
      pstmt.setInt(2, pageSize);
      result=pstmt.executeQuery();
      while(result.next()){
      User user=new User();
      user.setId(result.getInt(1));
      user.setName(result.getString(2));
      user.setNumber(result.getString(3));
      list.add(user);
      }
      } catch (Exception e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
      }finally{
      jdbc.close(conn, pstmt, result);
      }
      return list;
      }
      }

      Die User-Klasse wird zum Speichern der abgefragten Daten verwendet. Der Kerncode lautet wie folgt:

      public class User {
      private int id;
      private String name;
      private String number;
      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 String getNumber() {
      return number;
      }
      public void setNumber(String number) {
      this.number = number;
      }
      }

      2. Kontrollschicht

      Die ListUser-Klasse ruft intern UserDao auf. Das Objekt fragt die Daten ab und weist der Seite die Anzeige der Daten zu. Der Kerncode lautet wie folgt:

      import java.io.IOException;
      import java.io.PrintWriter;
      import java.util.ArrayList;
      import java.util.List;
      import javax.servlet.ServletException;
      import javax.servlet.http.HttpServlet;
      import javax.servlet.http.HttpServletRequest;
      import javax.servlet.http.HttpServletResponse;
      import com.dao.User;
      import com.dao.UserDao;
      public class ListUser extends HttpServlet {
      public ListUser() {
      super();
      }
      public void destroy() {
      super.destroy(); // Just puts "destroy" string in log
      // Put your code here
      }
      public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
      doPost(request, response);
      }
      public void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
      response.setCharacterEncoding("utf-8");
      int pageNo = 1;
      UserDao userdao=new UserDao();
      List<User> lists=new ArrayList<User>();
      String pageno=request.getParameter("pageNos");
      if(pageno != null){
      pageNo=Integer.parseInt(pageno);
      }
      lists=userdao.listUser(pageNo);
      int recordCount=userdao.getPage();
      request.setAttribute("recordCount", userdao.getPage());
      request.setAttribute("listss", lists);
      request.setAttribute("pageNos", pageNo);
      request.getRequestDispatcher("userlist.jsp").forward(request, response);
      }
      public void init() throws ServletException {
      // Put your code here
      }
      }

      3. Pr?sentationsebene

      Die Ausgabeseite userlist.jsp verwendet EL und JSTL, um Ausgabeabfrageergebnisse. Der Kerncode lautet wie folgt:

      <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
      <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
      <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%> 
      <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
      <%
      String path = request.getContextPath();
      String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
      %>
      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
      <html>
      <head>
      <base href="<%=basePath%>">
      <title>My JSP &#39;userlist.jsp&#39; starting page</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="styles.css">
      -->
      <style type="text/css">
      th,td{width: 150px;border: 2px solid gray;text-align: center;}
      body{text-align: center;}
      a{text-decoration: none;}
      table {border-collapse: collapse;}
      </style>
      </head>
      <body>
      <h2 align="center">圖書信息</h2>
      <table align="center">
      <tr><td>書號</td><td>書名</td><td>庫存量</td></tr>
      </table>
      <table align="center">
      <c:forEach items="${listss}" var="person">
      <tr>
      <td class="hidden-480">${person.id}</td>
      <td class="hidden-480">${person.name }</td>
      <td class="hidden-480">${person.number }</td>
      </tr>
      </c:forEach>
      </table>
      <br>
      <c:if test="${pageNos>1 }">
      <a href="ListUser?pageNos=1" >首頁</a>
      <a href="ListUser?pageNos=${pageNos-1 }">上一頁</a>
      </c:if>
      <c:if test="${pageNos <recordCount }">
      <a href="ListUser?pageNos=${pageNos+1 }">下一頁</a>
      <a href="ListUser?pageNos=${recordCount }">末頁</a>
      </c:if>
      <form action="ListUser">
      <h4 align="center">共${recordCount}頁 &nbsp
      <input type="text" value="${pageNos}" name="pageNos" size="1">頁
      <input type="submit" value="到達">
      </h4>
      </form>
      </body>
      </html>

      Das Folgende ist ein einfacher Beispielcode für die Java-Web-Paging-Anzeige, der vom Editor eingeführt wurde. Ich hoffe, dass es Ihnen hilfreich sein wird, wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich m?chte mich auch bei Ihnen allen für Ihre Unterstützung der chinesischen PHP-Website bedanken!

      Erkl?rung dieser Website
      Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

      Hei?e KI -Werkzeuge

      Undress AI Tool

      Undress AI Tool

      Ausziehbilder kostenlos

      Undresser.AI Undress

      Undresser.AI Undress

      KI-gestützte App zum Erstellen realistischer Aktfotos

      AI Clothes Remover

      AI Clothes Remover

      Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

      Clothoff.io

      Clothoff.io

      KI-Kleiderentferner

      Video Face Swap

      Video Face Swap

      Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

      Hei?e Werkzeuge

      Notepad++7.3.1

      Notepad++7.3.1

      Einfach zu bedienender und kostenloser Code-Editor

      SublimeText3 chinesische Version

      SublimeText3 chinesische Version

      Chinesische Version, sehr einfach zu bedienen

      Senden Sie Studio 13.0.1

      Senden Sie Studio 13.0.1

      Leistungsstarke integrierte PHP-Entwicklungsumgebung

      Dreamweaver CS6

      Dreamweaver CS6

      Visuelle Webentwicklungstools

      SublimeText3 Mac-Version

      SublimeText3 Mac-Version

      Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

      Hei?e Themen

      PHP-Tutorial
      1502
      276
      Wie gehe ich mit Transaktionen in Java mit JDBC um? Wie gehe ich mit Transaktionen in Java mit JDBC um? Aug 02, 2025 pm 12:29 PM

      Um JDBC -Transaktionen korrekt zu verarbeiten, müssen Sie zun?chst den automatischen Komiti -Modus ausschalten und dann mehrere Vorg?nge ausführen und schlie?lich entsprechend den Ergebnissen festlegen oder rollen. 1. Nennen Sie Conn.SetAutoCommit (False), um die Transaktion zu starten. 2. Führen Sie mehrere SQL -Operationen aus, z. B. einfügen und aktualisieren. 3. Rufen Sie Conn.Commit () an, wenn alle Vorg?nge erfolgreich sind, und rufen Sie Conn.Rollback () auf, wenn eine Ausnahme auftritt, um die Datenkonsistenz zu gew?hrleisten. Gleichzeitig sollten Try-with-Ressourcen verwendet werden, um Ressourcen zu verwalten, Ausnahmen ordnungsgem?? zu behandeln und Verbindungen zu schlie?en, um Verbindungsleckage zu vermeiden. Darüber hinaus wird empfohlen, Verbindungspools zu verwenden und Save -Punkte zu setzen, um teilweise Rollback zu erreichen und Transaktionen so kurz wie m?glich zu halten, um die Leistung zu verbessern.

      Vergleich von Java Frameworks: Spring Boot vs Quarkus gegen Micronaut Vergleich von Java Frameworks: Spring Boot vs Quarkus gegen Micronaut Aug 04, 2025 pm 12:48 PM

      Pre-Formancetartuptimemoryusage, QuarkusandmicronautleadduToCompile-Time-foringandgraalvSupport, WithQuarkusofttenperformLightBetterin serverloser Szenarien.2. Thyvelopecosystem,

      Gehen Sie zum Beispiel für HTTP Middleware -Protokollierung Gehen Sie zum Beispiel für HTTP Middleware -Protokollierung Aug 03, 2025 am 11:35 AM

      HTTP-Protokoll Middleware in Go kann Anforderungsmethoden, Pfade, Client-IP und zeitaufw?ndiges Aufzeichnen aufzeichnen. 1. Verwenden Sie http.Handlerfunc, um den Prozessor zu wickeln, 2. Nehmen Sie die Startzeit und die Endzeit vor und nach dem Aufrufen als n?chstes auf. Der vollst?ndige Beispielcode wurde überprüft, um auszuführen und eignet sich zum Starten eines kleinen und mittelgro?en Projekts. Zu den Erweiterungsvorschl?gen geh?ren das Erfassen von Statuscodes, die Unterstützung von JSON -Protokollen und die Nachverfolgung von ID -IDs.

      Wie funktioniert die Müllsammlung in Java? Wie funktioniert die Müllsammlung in Java? Aug 02, 2025 pm 01:55 PM

      Die Müllsammlung von Java (GC) ist ein Mechanismus, der automatisch den Speicher verwaltet, der das Risiko eines Speicherlecks verringert, indem unerreichbare Objekte zurückgeführt werden. 1.GC beurteilt die Zug?nglichkeit des Objekts aus dem Stammobjekt (z. B. Stapelvariablen, aktive Threads, statische Felder usw.) und nicht erreichbare Objekte als Müll markiert. 2. Basierend auf dem markierten Algorithmus markieren Sie alle erreichbaren Objekte und l?schen Sie nicht markierte Objekte. 3.. Verfolgen Sie eine Generationskollektionsstrategie: Die neue Generation (Eden, S0, S1) führt h?ufig MollGC aus; Die ?lteren Menschen erzielen weniger, dauert jedoch l?nger, um MajorGC durchzuführen. MetaPace speichert Klassenmetadaten. 4. JVM bietet eine Vielzahl von GC -Ger?ten: SerialGC ist für kleine Anwendungen geeignet; ParallelgC verbessert den Durchsatz; CMS reduziert sich

      Vergleich von Java -Build -Werkzeugen: Maven vs. Gradle Vergleich von Java -Build -Werkzeugen: Maven vs. Gradle Aug 03, 2025 pm 01:36 PM

      GradleStheBetterChoiceFormostnewProjectsDuetoitSuperiorFlexibilit?t, Leistung und ModerntoolingSupport.1.GRADLE'SGROOVY/KOTLINDSLISMORECONCISEANDEIPRESSIVETHANMANMANBOSEXML.2.GRAGRECONCISEANDEPRPRESSIVETHANMAVENSVOSEXML.2.

      Verwenden von HTML `Input` -Typen für Benutzerdaten Verwenden von HTML `Input` -Typen für Benutzerdaten Aug 03, 2025 am 11:07 AM

      Durch die Auswahl des richtigen HTMlinput -Typs kann die Datengenauigkeit verbessert, die Benutzererfahrung verbessert und die Benutzerfreundlichkeit verbessert werden. 1. W?hlen Sie die entsprechenden Eingabetypen gem?? dem Datentyp aus, z. B. Text, E -Mail, Tel, Nummer und Datum, die automatisch überprüft und an die Tastatur anpassen k?nnen. 2. Verwenden Sie HTML5, um neue Typen wie URL, Farbe, Reichweite und Suche hinzuzufügen, die eine intuitivere Interaktionsmethode bieten k?nnen. 3.. Verwenden Sie Platzhalter und erforderliche Attribute, um die Effizienz und Genauigkeit der Formulierung zu verbessern. Es sollte jedoch beachtet werden, dass der Platzhalter das Etikett nicht ersetzen kann.

      Wie lese ich eine CSV -Datei in Java? Wie lese ich eine CSV -Datei in Java? Aug 03, 2025 am 11:56 AM

      Die Verwendung der OpenCSV -Bibliothek ist die beste Wahl zum Lesen von CSV -Dateien. Es kann komplexe Situationen bew?ltigen und mehrere Merkmale unterstützt. 2. Für einfache CSV-Dateien k?nnen Sie Javas integriertes BufferedReader in Kombination mit Split-Methode verwenden. 3. Wenn Sie eine flexiblere Formatsteuerung ben?tigen oder Apache -Komponenten verwendet haben, k?nnen Sie Apache CommonsCSV ausw?hlen. OpenCSV wird für die Einfachheit, Robustheit und die F?higkeit, CSV -Probleme in realen Szenarien zu l?sen, empfohlen.

      Wie benutze ich das Beobachtermuster in Java? Wie benutze ich das Beobachtermuster in Java? Aug 02, 2025 am 11:52 AM

      Die klare Antwort auf diese Frage ist die Empfehlung, das Beobachtermuster mithilfe einer benutzerdefinierten Observer -Schnittstelle zu implementieren. 1. Obwohl Java beobachtbar und Beobachter liefert, ist erstere eine Klasse und wurde veraltet und fehlt Flexibilit?t. 2. Die moderne empfohlene Praxis besteht darin, eine funktionale Observer -Schnittstelle zu definieren, und das Subjekt beh?lt die Beobachterliste bei und benachrichtigt alle Beobachter, wenn sich der Zustand ?ndert. 3.. Es kann in Kombination mit Lambda -Ausdrücken verwendet werden, um die Einfachheit und Wartbarkeit des Codes zu verbessern. V. Daher sollten neue Projekte ein benutzerdefiniertes Observer-Schnittstellenschema annehmen, das Typen ist, einfach zu testen und sich auf moderne Java spezialisiert zu haben

      See all articles