com.githubpagehelper.PageException: При использовании подключаемого модуля PageHelper необходимо установить атрибут helper.。
pagehelper.helper-dialect=mysql
PageHelper.startPage(page, limit).using("mysql");
List list= mapper.list();
PageInfo<U> pageInfo = new PageInfo<>(list);
Механизм обработки помощника для диалекта: по умолчанию он будет использовать mysql для идентификации через настроенную строку подключения. После изменения строки подключения вам необходимо указать mysql через файл конфигурации. Параметры конфигурационного файла выделяются горизонтальными линиями и верблюжьим регистром (до 1.4.4 был баг и распознавались только верблюжьи регистры);
public static AbstractHelperDialect instanceDialect(String dialectClass, Properties properties) {
AbstractHelperDialect dialect;
if (StringUtil.isEmpty(dialectClass)) {
throw new PageException("Используйте PageHelper Должен быть установлен плагин нумерации страниц. helper свойство");
}
public AbstractHelperDialect extractDialect(String dialectKey, MappedStatement ms, DataSource dataSource, Properties properties) {
String dialect = PageAutoDialect.fromJdbcUrl(dialectKey);
return PageAutoDialect.instanceDialect(dialect, properties);
}
public static String fromJdbcUrl(String jdbcUrl) {
final String url = jdbcUrl.toLowerCase();
for (String dialect : dialectAliasMap.keySet()) {
if (url.contains(":" + dialect.toLowerCase() + ":")) {
return dialect;
}
}
return null;
}
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);
...
Как видите, pagehelper по умолчанию автоматически определяет диалект по URL-адресу jdbc. Например, для MySQL будет использоваться «:mysql:», чтобы определить наличие соответствующего диалекта. В строке подключения jdbc стороннего драйвера используется «:xxxxx:». Этот помощник страницы недоступен по умолчанию, поэтому автоматическую идентификацию использовать нельзя. Чтобы указать диалект в файле конфигурации, просто укажите совместимый MySQL. Проблема заключается в вспомогательном пакете. До версии 1.4.4 он мог распознавать только конфигурацию Camel.