Если вы используете MyBatis, рекомендуется попробовать этот плагин пагинации. Это наверняка самый быстрый и легкоиспользуемый плагин пагинации.
PageHelper поддерживает любые сложные запросы с одной или несколькими таблицами. Что касается некоторых специальных случаев, обратитесь к важной заметке.
Хотите использовать PageHelper? Пожалуйста, проверьте как использовать PageHelper.
https://apidoc.gitee.com/free/Mybatis_PageHelper
APIs: https://apidoc.gitee.com/free/Mybatis_PageHelper/com/github/pagehelper/page/PageMethod.html
CSDN Blog: http://blog.csdn.net/isea533/article/details/73555400
GitHub: https://github.com/mybatis-book/book
static {
// регистрация псевдонима
registerDialectAlias("hsqldb", HsqldbDialect.class);
registerDialectAlias("h2", HsqldbDialect.class);
registerDialectAlias("phoenix", HsqldbDialect.class);
registerDialectAlias("postgresql", PostgreSqlDialect.class);
registerDialectAlias("mysql", MySqlDialect.class);
registerDialectAlias("mariadb", MySqlDialect.class);
registerDialectAlias("sqlite", MySqlDialect.class);
registerDialectAlias("herddb", HerdDBDialect.class);
registerDialectAlias("oracle", OracleDialect.class);
registerDialectAlias("oracle9i", Oracle9iDialect.class);
registerDialectAlias("db2", Db2Dialect.class);
registerDialectAlias("as400", AS400Dialect.class);
registerDialectAlias("informix", InformixDialect.class);
// решение проблемы с informix-sqli #129, но старые записи остаются
registerDialectAlias("informix-sqli", InformixDialect.class);
registerDialectAlias("sqlserver", SqlServerDialect.class);
registerDialectAlias("sqlserver2012", SqlServer2012Dialect.class);
registerDialectAlias("derby", SqlServer2012Dialect.class);
// дамьинская база данных, https://github.com/mybatis-book/book/issues/43
registerDialectAlias("dm", OracleDialect.class);
// АлиБаба PPAS база данных, https://github.com/pagehelper/Mybatis-PageHelper/issues/281
registerDialectAlias("edb", OracleDialect.class);
// Суньтонг база данных
registerDialectAlias("oscar", OscarDialect.class);
registerDialectAlias("clickhouse", MySqlDialect.class);
// Ханго база данных
registerDialectAlias("highgo", HsqldbDialect.class);
// Чжоугу база данных
registerDialectAlias("xugu", HsqldbDialect.class);
registerDialectAlias("impala", HsqldbDialect.class);
registerDialectAlias("firebirdsql", FirebirdDialect.class);
// Юньчжоу Киньбао база данных
registerDialectAlias("kingbase", PostgreSqlDialect.class);
// Новая версия Юньчжоу Киньбао 8
registerDialectAlias("kingbase8", PostgreSqlDialect.class);
// Цзянлунь база данных
registerDialectAlias("xcloud", CirroDataDialect.class);
}
``` //OpenGauss база данных
registerDialectAlias("opengauss", PostgreSqlDialect.class);
//Зарегистрировать AutoDialect
//Если вы хотите достичь того же эффекта, как в предыдущей версии, можно конфигурировать autoDialectClass=old
registerAutoDialectAlias("old", DefaultAutoDialect.class);
registerAutoDialectAlias("hikari", HikariAutoDialect.class);
registerAutoDialectAlias("druid", DruidAutoDialect.class);
registerAutoDialectAlias("tomcat-jdbc", TomcatAutoDialect.class);
registerAutoDialectAlias("dbcp", DbcpAutoDialect.class);
registerAutoDialectAlias("c3p0", C3P0AutoDialect.class);
//Если не указано, используется по умолчанию DataSourceNegotiationAutoDialect
registerAutoDialectAlias("default", DataSourceNegotiationAutoDialect.class);
}
> Если база данных, которую вы используете, отсутствует в этом списке, можно настроить параметр `dialectAlias`.
>
> Этот параметр позволяет настроить псевдоним для пользовательской реализации,
> который может использоваться для автоматического получения соответствующей реализации согласно JDBCURL,
> а также позволяет переопределять существующую реализацию таким образом.
> Пример конфигурации приведён ниже (используйте точки с запятой для разделения нескольких псевдонимов):
>
> ```xml
> <property name="dialectAlias" value="oracle=com.github.pagehelper.dialect.helper.OracleDialect"/>
> <!-- 6.0 Поддерживается следующий способ ссылки, указывающий на реализацию Oracle9iDialect.class -->
> <property name="dialectAlias" value="oracle=oracle9i"/>
> <!-- 6.0 Для поддержки следующих методов цитирования, DM использует синтаксис Oracle для пагинации, чтобы упростить запись полного имени класса -->
> <property name="dialectAlias" value="dm=oracle"/>
> ```## Использование [QueryInterceptor spec](https://github.com/pagehelper/Mybatis-PageHelper/blob/master/src/main/java/com/github/pagehelper/QueryInterceptor.java)
## Установка
Чтобы использовать PageHelper, вам просто нужно добавить файлы
[pagehelper-x.y.z.jar](http://repo1.maven.org/maven2/com/github/pagehelper/pagehelper/)
и [jsqlparser-x.y.z.jar](http://repo1.maven.org/maven2/com/github/jsqlparser/jsqlparser/) в classpath.
> Для соотношения версий, обратитесь к зависимым версиям в pom.
Если вы используете Maven, вы можете просто добавить следующую зависимость в ваш `pom.xml`:
```xml
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>последняя версия</version>
</dependency>
Если вы используете Spring Boot, вы можете обратиться к pagemaker-spring-boot-starter
https://github.com/pagehelper/Mybatis-PageHelper/issues/new
Сайт: https://mybatis.io
Блог: http://blog.csdn.net/isea533
Электронная почта: abel533@gmail.com
PageHelper на GitHub: https://github.com/pagehelper/Mybatis-PageHelper
PageHelper на GitOSC: http://git.oschina.net/free/Mybatis_PageHelper
Материалы по MyBatis:
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.