From 1030f22757cf7caa0c31144cd979eb279987eb73 Mon Sep 17 00:00:00 2001 From: Looly Date: Sat, 24 Sep 2022 11:54:13 +0800 Subject: [PATCH] fix code --- .../java/cn/hutool/db/dialect/impl/OracleDialect.java | 4 ++-- .../main/java/cn/hutool/db/handler/ResultSetUtil.java | 9 ++++++++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/hutool-db/src/main/java/cn/hutool/db/dialect/impl/OracleDialect.java b/hutool-db/src/main/java/cn/hutool/db/dialect/impl/OracleDialect.java index e66a05653..09e7cc9d8 100644 --- a/hutool-db/src/main/java/cn/hutool/db/dialect/impl/OracleDialect.java +++ b/hutool-db/src/main/java/cn/hutool/db/dialect/impl/OracleDialect.java @@ -35,8 +35,8 @@ public class OracleDialect extends AnsiSqlDialect { return find .insertPreFragment("SELECT * FROM ( SELECT row_.*, rownum rownum_ from ( ") .append(" ) row_ where rownum <= ").append(startEnd[1])// - .append(") table_alias")// - .append(" where table_alias.rownum_ > ").append(startEnd[0]);// + .append(") table_alias_")// + .append(" where table_alias_.rownum_ > ").append(startEnd[0]);// } @Override diff --git a/hutool-db/src/main/java/cn/hutool/db/handler/ResultSetUtil.java b/hutool-db/src/main/java/cn/hutool/db/handler/ResultSetUtil.java index 099e53aa1..37e979795 100644 --- a/hutool-db/src/main/java/cn/hutool/db/handler/ResultSetUtil.java +++ b/hutool-db/src/main/java/cn/hutool/db/handler/ResultSetUtil.java @@ -150,9 +150,16 @@ public class ResultSetUtil { */ public static T toEntity(final T row, final int columnCount, final ResultSetMetaData meta, final ResultSet rs, final boolean withMetaInfo) throws SQLException { int type; + String columnLabel; for (int i = 1; i <= columnCount; i++) { type = meta.getColumnType(i); - row.put(meta.getColumnLabel(i), getColumnValue(rs, i, type, null)); + columnLabel = meta.getColumnLabel(i); + if("rownum_".equalsIgnoreCase(columnLabel)){ + // issue#2618@Github + // 分页时会查出rownum字段,此处忽略掉读取 + continue; + } + row.put(columnLabel, getColumnValue(rs, i, type, null)); } if (withMetaInfo) { try {