diff --git a/src/main/java/com/github/pagehelper/dialect/AbstractHelperDialect.java b/src/main/java/com/github/pagehelper/dialect/AbstractHelperDialect.java index c333e978..34f56ac0 100644 --- a/src/main/java/com/github/pagehelper/dialect/AbstractHelperDialect.java +++ b/src/main/java/com/github/pagehelper/dialect/AbstractHelperDialect.java @@ -244,13 +244,14 @@ public String getPageSql(MappedStatement ms, BoundSql boundSql, Object parameter } } pageKey.update(orderBy); - sql = cacheOn ? CACHE_PAGESQL.get(cacheSqlKey) : null; - if (sql == null) { - sql = OrderByParser.converToOrderBySql(sql, orderBy, jSqlParser); + String cachedSql = cacheOn ? CACHE_PAGESQL.get(cacheSqlKey) : null; + if (cachedSql == null) { + cachedSql = OrderByParser.converToOrderBySql(sql, orderBy, jSqlParser); if (cacheOn && orderByOnly) { - CACHE_PAGESQL.put(cacheSqlKey, sql); + CACHE_PAGESQL.put(cacheSqlKey, cachedSql); } } + sql = cachedSql; } if (orderByOnly) { return sql; @@ -265,7 +266,7 @@ public String getPageSql(MappedStatement ms, BoundSql boundSql, Object parameter return pageSql; } - protected String getPageCacheSqlKey(Page page, String sql) { + protected String getPageCacheSqlKey(final Page page, final String sql) { if (page.getStartRow() == 0) { return sql; }