Mybatis Paging-Plugin pageHelper - ausführliche Erklärung und einfaches Beispiel Arbeitsframework Spring Springmvc Mybatis3 Zuerst müssen Sie Maven-Abhängigkeiten einführen, um das Paging-Plugin verwenden zu können. Fügen Sie Folgendes zu pom.xml hinzu <!-- Seitennummerierungshilfe --> <Abhängigkeit> <groupId>com.github.pagehelper</groupId> <artifactId>Seitenhelfer</artifactId> <version>3.7.5</version> </Abhängigkeit> Zweitens müssen Sie der Konfigurationsdatei eine Konfiguration hinzufügen. Es gibt zwei Möglichkeiten 1. Erstellen Sie eine neue mybatis-config.xml-Datei mit folgendem Inhalt <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Konfiguration ÖFFENTLICH "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <Konfiguration> <!-- Seitennummerierungshilfe --> <Plugins> <!-- com.github.pagehelper ist der Paketname der PageHelper-Klasse--> <plugin interceptor="com.github.pagehelper.PageHelper"> <!-- Datenbankdialekt --> <Eigenschaftsname="Dialekt" Wert="MySQL"/> <!-- Wenn der Wert auf „true“ gesetzt ist, wird bei Verwendung der RowBounds-Paginierung eine Zählabfrage ausgeführt, um die Gesamtzahl zu ermitteln --> <Eigenschaftsname="rowBoundsWithCount" Wert="true"/> </plugin> </plugins> </Konfiguration> Fügen Sie eine Bean-Eigenschaft in spring-mybatis.xml hinzu <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <Eigenschaftsname="Datenquelle" ref="Datenquelle" /> Laden Sie die globale Konfigurationsdatei <Eigenschaftsname="Konfigurationsstandort" Wert="Klassenpfad:mybatis-config.xml"></Eigenschaft> Konfigurieren Sie das Mapper-Scanning, um alle Mapper.xml-Mapping-Dateien zu finden. <Eigenschaftsname="mapperLocations" Wert="classpath:com/lyitong/mapping/*.xml"></Eigenschaftsname> Hinweis: Wenn in Ihrer Konfigurationsdatei mybatis-config.xml die folgende Aliaskonfiguration aktiviert ist: <TypAliase> <!-- Als Alias wird der uneingeschränkte Klassenname von Javabean verwendet, wobei der erste Buchstabe der Klasse klein geschrieben ist (tatsächlich wird bei dem Alias nicht zwischen Groß- und Kleinschreibung unterschieden). Sie können der JavaBean auch die Annotation @Alias hinzufügen, um einen Alias zu definieren, zum Beispiel: @Alias(student) --> <Paketname="com.lyt.usermanage.mapper"/> </TypAliases> Dann müssen Ihre Spring- und Mybatis-Integrationsdateien entsprechende Eigenschaften hinzufügen. Andernfalls schlägt das Laden der Mybatis-Konfigurationsdatei fehl und es wird eine Ausnahme gemeldet: <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <Eigenschaftsname="Datenquelle" ref="Datenquelle" /> <!-- Globale Konfigurationsdatei laden --> <Eigenschaftsname="Konfigurationsstandort" Wert="Klassenpfad:mybatis/mybatis-config.xml"></Eigenschaft> <!-- Konfigurieren Sie den Mapper-Scan, um alle Mapper.xml-Mapping-Dateien zu finden. --> <property name="mapperLocations" value="classpath:com/lyt/usermanage/mapper/*.xml"></property> <!-- Konfigurationstyp-Alias --> <Eigenschaftsname="TypAliasesPackage" Wert="classpath:com/lyt/usermanage/pojo/*"></Eigenschaftsname> </bean> Im Vergleich zur obigen Konfiguration haben wir hier einen weiteren Schritt <Eigenschaftsname="TypAliasesPackage" Wert="classpath:com/lyt/usermanage/pojo/*"></Eigenschaftsname> Achten Sie bei der Konfiguration auf die Vereinheitlichung der Eigenschaften der Mybatis-Konfigurationsdatei und der Spring-Mybatis-Integrationsdatei. 2. Die obige Konfiguration ist abgeschlossen, die zweite Methode unten Konfigurieren Sie die folgenden Eigenschaften direkt in spring-mybatis.xml <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <Eigenschaftsname="Datenquelle" ref="Datenquelle" /> <Eigenschaftsname="mapperLocations" Wert="classpath:com/lyitong/mapping/*.xml"></Eigenschaftsname> <!-- pageHelper Seitenerweiterungs-Plugin--> <Eigenschaftsname="Plugins"> <Feld> <bean class="com.github.pagehelper.PageHelper"> <Eigenschaftsname="Eigenschaften"> <Wert> dialekt=mysql rowBoundsWithCount=true </Wert> </Eigenschaft> </bean> </array> </Eigenschaft> </bean> Nachdem die Konfigurationsdatei geladen wurde, kann sie direkt verwendet werden. Der spezifische Verwendungscode lautet wie folgt: PageHelper.startPage(Integer.parseInt(aktuelleSeite), Integer.parseInt(Seitengröße)); List<LytBbsTz> publishTz = bbsTzDao.getPublishTz(Benutzer-ID); PageInfo<LytBbsTz> info = neue PageInfo<LytBbsTz>(veröffentlichenTz); map.put("status", 1); map.put("tzList", info.getList()); Rückfahrkarte; Die Parameter, die im Frontend übergeben werden müssen, sind die aktuelle Seite und die Anzahl der anzuzeigenden Seiten. Natürlich kann die Anzahl der anzuzeigenden Seiten auch im Backend angegeben werden. Im Allgemeinen ist es am besten, die Standardkonfiguration beim Empfangen von Parametern wie folgt hinzuzufügen: @RequestParam(defaultValue="1",value="currentPage")String aktuelleSeite, @RequestParam(defaultValue="10",value="pageSize")String Seitengröße Dies ist die Standardseite und die Anzahl der Elemente, die angezeigt werden, wenn der empfangene Parameter eine leere Zeichenfolge ist. Sie können dies selbst festlegen. Das Obige ist eine einfache Anwendung von pageHelper Vielen Dank fürs Lesen, ich hoffe, es kann Ihnen helfen, danke für Ihre Unterstützung dieser Site! Das könnte Sie auch interessieren:
|
<<: Vue imitiert den Formularbeispielcode von ElementUI
>>: Detaillierte Schritte zur Installation von Docker 1.8 auf CentOS 7
Vorwort: In einigen früheren Artikeln haben wir h...
Inhaltsverzeichnis 1. Einleitung 2. Mehrere Mögli...
Ich habe gestern lange geschlafen und war den gan...
1. Verwenden Sie zur Ausführung weiterhin ein PHP...
Standardmäßig wird PHP unter CentOS 7 als Apache ...
Diese Spezifikationen sollen die Veröffentlichung ...
Wenn wir auf der Seite eine PDF-Vorschau anzeigen...
Sehen Sie sich die von der aktuellen Datenbank un...
Um den Export und Import von Daten in SQL zu erle...
Inhaltsverzeichnis MySQL-Einschränkungsoperatione...
Standardmäßig beträgt der Rand der Tabelle 0 und ...
Code kopieren Der Code lautet wie folgt: <styl...
Teil 1 HTML <html> – Start-Tag <Kopf>...
Ich habe schon einmal einen solchen Artikel gesch...
WML (Wireless Markup Language). Es handelt sich u...