diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/query/QueryChain.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/query/QueryChain.java
deleted file mode 100644
index f555a7f7..00000000
--- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/query/QueryChain.java
+++ /dev/null
@@ -1,573 +0,0 @@
-/*
- * Copyright (c) 2022-2023, Mybatis-Flex (fuhai999@gmail.com).
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.mybatisflex.core.query;
-
-import com.mybatisflex.core.constant.SqlOperator;
-import com.mybatisflex.core.table.TableDef;
-import com.mybatisflex.core.util.LambdaGetter;
-import com.mybatisflex.core.util.LambdaUtil;
-
-import java.util.Map;
-import java.util.function.Consumer;
-
-/**
- * @author michael
- */
-@SuppressWarnings({"unchecked", "rawtypes"})
-public class QueryChain extends QueryWrapper {
-
- @Override
- public WithBuilder with(String name) {
- return (WithBuilder) super.with(name);
- }
-
- @Override
- public WithBuilder with(String name, String... params) {
- return (WithBuilder) super.with(name, params);
- }
-
- @Override
- public WithBuilder withRecursive(String name) {
- return (WithBuilder) super.withRecursive(name);
- }
-
- @Override
- public WithBuilder withRecursive(String name, String... params) {
- return (WithBuilder) super.withRecursive(name, params);
- }
-
- @Override
- public QueryChain select() {
- super.select();
- return this;
- }
-
- @Override
- public QueryChain select(String... columns) {
- super.select(columns);
- return this;
- }
-
- @Override
- public QueryWrapper select(LambdaGetter... lambdaGetters) {
- super.select(lambdaGetters);
- return this;
- }
-
- @Override
- public QueryChain select(QueryColumn... queryColumns) {
- super.select(queryColumns);
- return this;
- }
-
- @Override
- public QueryChain select(QueryColumn[]... queryColumns) {
- super.select(queryColumns);
- return this;
- }
-
- @Override
- public QueryChain from(TableDef... tableDefs) {
- super.from(tableDefs);
- return this;
- }
-
- @Override
- public QueryChain from(Class>... entityClasses) {
- super.from(entityClasses);
- return this;
- }
-
- @Override
- public QueryChain from(String... tables) {
- super.from(tables);
- return this;
- }
-
- @Override
- public QueryChain from(QueryTable... tables) {
- super.from(tables);
- return this;
- }
-
- @Override
- public QueryChain from(QueryWrapper queryWrapper) {
- super.from(queryWrapper);
- return this;
- }
-
- @Override
- public QueryChain as(String alias) {
- super.as(alias);
- return this;
- }
-
- @Override
- public QueryChain where(QueryCondition queryCondition) {
- super.where(queryCondition);
- return this;
- }
-
- @Override
- public QueryChain where(String sql) {
- super.where(sql);
- return this;
- }
-
- @Override
- public QueryChain where(String sql, Object... params) {
- super.where(sql, params);
- return this;
- }
-
- @Override
- public QueryChain where(Map whereConditions) {
- super.where(whereConditions);
- return this;
- }
-
- @Override
- public QueryChain where(Map whereConditions, Map operators) {
- super.where(whereConditions, operators);
- return this;
- }
-
- @Override
- public QueryConditionBuilder where(LambdaGetter fn) {
- return new QueryConditionBuilder<>(this, LambdaUtil.getQueryColumn(fn), SqlConnector.AND);
- }
-
- @Override
- public QueryChain and(QueryCondition queryCondition) {
- super.and(queryCondition);
- return this;
- }
-
- @Override
- public QueryChain and(String sql) {
- super.and(sql);
- return this;
- }
-
- @Override
- public QueryChain and(String sql, Object... params) {
- super.and(sql, params);
- return this;
- }
-
- @Override
- public QueryConditionBuilder and(LambdaGetter fn) {
- return new QueryConditionBuilder<>(this, LambdaUtil.getQueryColumn(fn), SqlConnector.AND);
- }
-
- @Override
- public QueryChain and(Consumer consumer) {
- super.and(consumer);
- return this;
- }
-
- @Override
- public QueryChain and(Map whereConditions) {
- super.and(whereConditions);
- return this;
- }
-
- @Override
- public QueryChain and(Map whereConditions, Map operators) {
- super.and(whereConditions, operators);
- return this;
- }
-
- @Override
- public QueryChain or(QueryCondition queryCondition) {
- super.or(queryCondition);
- return this;
- }
-
- @Override
- public QueryChain or(String sql) {
- super.or(sql);
- return this;
- }
-
- @Override
- public QueryChain or(String sql, Object... params) {
- super.or(sql, params);
- return this;
- }
-
- @Override
- public QueryConditionBuilder or(LambdaGetter fn) {
- return new QueryConditionBuilder<>(this, LambdaUtil.getQueryColumn(fn), SqlConnector.OR);
- }
-
- @Override
- public QueryChain or(Consumer consumer) {
- super.or(consumer);
- return this;
- }
-
- @Override
- public QueryChain or(Map whereConditions) {
- super.or(whereConditions);
- return this;
- }
-
- @Override
- public QueryChain or(Map whereConditions, Map operators) {
- super.or(whereConditions, operators);
- return this;
- }
-
-
- @Override
- public Joiner leftJoin(String table) {
- return super.leftJoin(table);
- }
-
- @Override
- public Joiner leftJoin(String table, boolean when) {
- return super.leftJoin(table, when);
- }
-
- @Override
- public Joiner leftJoin(Class entityClass) {
- return super.leftJoin(entityClass);
- }
-
- @Override
- public Joiner leftJoin(Class entityClass, boolean when) {
- return super.leftJoin(entityClass, when);
- }
-
- @Override
- public Joiner leftJoin(TableDef table) {
- return super.leftJoin(table);
- }
-
- @Override
- public Joiner leftJoin(TableDef table, boolean when) {
- return super.leftJoin(table, when);
- }
-
- @Override
- public Joiner leftJoin(QueryWrapper table) {
- return super.leftJoin(table);
- }
-
- @Override
- public Joiner leftJoin(QueryWrapper table, boolean when) {
- return super.leftJoin(table, when);
- }
-
- @Override
- public Joiner rightJoin(String table) {
- return super.rightJoin(table);
- }
-
- @Override
- public Joiner rightJoin(String table, boolean when) {
- return super.rightJoin(table, when);
- }
-
- @Override
- public Joiner rightJoin(Class entityClass) {
- return super.rightJoin(entityClass);
- }
-
- @Override
- public Joiner rightJoin(Class entityClass, boolean when) {
- return super.rightJoin(entityClass, when);
- }
-
- @Override
- public Joiner rightJoin(TableDef table) {
- return super.rightJoin(table);
- }
-
- @Override
- public Joiner rightJoin(TableDef table, boolean when) {
- return super.rightJoin(table, when);
- }
-
- @Override
- public Joiner rightJoin(QueryWrapper table) {
- return super.rightJoin(table);
- }
-
- @Override
- public Joiner rightJoin(QueryWrapper table, boolean when) {
- return super.rightJoin(table, when);
- }
-
- @Override
- public Joiner innerJoin(String table) {
- return super.innerJoin(table);
- }
-
- @Override
- public Joiner innerJoin(String table, boolean when) {
- return super.innerJoin(table, when);
- }
-
- @Override
- public Joiner innerJoin(Class entityClass) {
- return super.innerJoin(entityClass);
- }
-
- @Override
- public Joiner innerJoin(Class entityClass, boolean when) {
- return super.innerJoin(entityClass, when);
- }
-
- @Override
- public Joiner innerJoin(TableDef table) {
- return super.innerJoin(table);
- }
-
- @Override
- public Joiner innerJoin(TableDef table, boolean when) {
- return super.innerJoin(table, when);
- }
-
- @Override
- public Joiner innerJoin(QueryWrapper table) {
- return super.innerJoin(table);
- }
-
- @Override
- public Joiner innerJoin(QueryWrapper table, boolean when) {
- return super.innerJoin(table, when);
- }
-
- @Override
- public Joiner fullJoin(String table) {
- return super.fullJoin(table);
- }
-
- @Override
- public Joiner fullJoin(String table, boolean when) {
- return super.fullJoin(table, when);
- }
-
- @Override
- public Joiner fullJoin(Class entityClass) {
- return super.fullJoin(entityClass);
- }
-
- @Override
- public Joiner fullJoin(Class entityClass, boolean when) {
- return super.fullJoin(entityClass, when);
- }
-
- @Override
- public Joiner fullJoin(TableDef table) {
- return super.fullJoin(table);
- }
-
- @Override
- public Joiner fullJoin(TableDef table, boolean when) {
- return super.fullJoin(table, when);
- }
-
- @Override
- public Joiner fullJoin(QueryWrapper table) {
- return super.fullJoin(table);
- }
-
- @Override
- public Joiner fullJoin(QueryWrapper table, boolean when) {
- return super.fullJoin(table, when);
- }
-
- @Override
- public Joiner crossJoin(String table) {
- return super.crossJoin(table);
- }
-
- @Override
- public Joiner crossJoin(String table, boolean when) {
- return super.crossJoin(table, when);
- }
-
- @Override
- public Joiner crossJoin(Class entityClass) {
- return super.crossJoin(entityClass);
- }
-
- @Override
- public Joiner crossJoin(Class entityClass, boolean when) {
- return super.crossJoin(entityClass, when);
- }
-
- @Override
- public Joiner crossJoin(TableDef table) {
- return super.crossJoin(table);
- }
-
- @Override
- public Joiner crossJoin(TableDef table, boolean when) {
- return super.crossJoin(table, when);
- }
-
- @Override
- public Joiner crossJoin(QueryWrapper table) {
- return super.crossJoin(table);
- }
-
- @Override
- public Joiner crossJoin(QueryWrapper table, boolean when) {
- return super.crossJoin(table, when);
- }
-
- @Override
- public Joiner join(String table) {
- return super.join(table);
- }
-
- @Override
- public Joiner join(String table, boolean when) {
- return super.join(table, when);
- }
-
- @Override
- public Joiner join(Class entityClass) {
- return super.join(entityClass);
- }
-
- @Override
- public Joiner join(Class entityClass, boolean when) {
- return super.join(entityClass, when);
- }
-
- @Override
- public Joiner join(TableDef table) {
- return super.join(table);
- }
-
- @Override
- public Joiner join(TableDef table, boolean when) {
- return super.join(table, when);
- }
-
- @Override
- public Joiner join(QueryWrapper table) {
- return super.join(table);
- }
-
- @Override
- public Joiner join(QueryWrapper table, boolean when) {
- return super.join(table, when);
- }
-
- @Override
- public QueryChain union(QueryWrapper unionQuery) {
- super.union(unionQuery);
- return this;
- }
-
- @Override
- public QueryChain unionAll(QueryWrapper unionQuery) {
- super.unionAll(unionQuery);
- return this;
- }
-
- @Override
- public QueryChain forUpdate() {
- super.forUpdate();
- return this;
- }
-
- @Override
- public QueryChain forUpdateNoWait() {
- super.forUpdateNoWait();
- return this;
- }
-
- @Override
- public QueryChain groupBy(String name) {
- super.groupBy(name);
- return this;
- }
-
- @Override
- public QueryChain groupBy(String... names) {
- super.groupBy(names);
- return this;
- }
-
- @Override
- public QueryChain groupBy(QueryColumn column) {
- super.groupBy(column);
- return this;
- }
-
- @Override
- public QueryChain groupBy(QueryColumn... columns) {
- super.groupBy(columns);
- return this;
- }
-
- @Override
- public QueryChain having(QueryCondition queryCondition) {
- super.having(queryCondition);
- return this;
- }
-
- @Override
- public QueryChain orderBy(QueryOrderBy... orderBys) {
- super.orderBy(orderBys);
- return this;
- }
-
- @Override
- public QueryChain orderBy(String... orderBys) {
- super.orderBy(orderBys);
- return this;
- }
-
- @Override
- public QueryChain limit(Integer rows) {
- super.limit(rows);
- return this;
- }
-
- @Override
- public QueryChain offset(Integer offset) {
- super.offset(offset);
- return this;
- }
-
- @Override
- public QueryChain limit(Integer offset, Integer rows) {
- super.limit(offset, rows);
- return this;
- }
-
- @Override
- public QueryChain datasource(String datasource) {
- super.datasource(datasource);
- return this;
- }
-
- @Override
- public QueryChain hint(String hint) {
- super.hint(hint);
- return this;
- }
-
-
-}
diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/query/QueryWrapperAdapter.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/query/QueryWrapperAdapter.java
new file mode 100644
index 00000000..84edc89c
--- /dev/null
+++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/query/QueryWrapperAdapter.java
@@ -0,0 +1,590 @@
+/*
+ * Copyright (c) 2022-2023, Mybatis-Flex (fuhai999@gmail.com).
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.mybatisflex.core.query;
+
+import com.mybatisflex.core.constant.SqlOperator;
+import com.mybatisflex.core.table.TableDef;
+import com.mybatisflex.core.util.LambdaGetter;
+import com.mybatisflex.core.util.LambdaUtil;
+
+import java.util.Map;
+import java.util.function.Consumer;
+
+/**
+ * {@link QueryWrapper} 泛型适配器。
+ *
+ * @param 返回值类型
+ * @author michael
+ * @author suomm
+ */
+@SuppressWarnings({"unchecked", "rawtypes"})
+public class QueryWrapperAdapter> extends QueryWrapper {
+
+ @Override
+ public WithBuilder with(String name) {
+ return super.with(name);
+ }
+
+ @Override
+ public WithBuilder with(String name, String... params) {
+ return super.with(name, params);
+ }
+
+ @Override
+ public WithBuilder withRecursive(String name) {
+ return super.withRecursive(name);
+ }
+
+ @Override
+ public WithBuilder withRecursive(String name, String... params) {
+ return super.withRecursive(name, params);
+ }
+
+ @Override
+ public R select() {
+ super.select();
+ return (R) this;
+ }
+
+ @Override
+ public R select(String... columns) {
+ super.select(columns);
+ return (R) this;
+ }
+
+ @Override
+ public QueryWrapper select(LambdaGetter... lambdaGetters) {
+ super.select(lambdaGetters);
+ return this;
+ }
+
+ @Override
+ public R select(QueryColumn... queryColumns) {
+ super.select(queryColumns);
+ return (R) this;
+ }
+
+ @Override
+ public R select(QueryColumn[]... queryColumns) {
+ super.select(queryColumns);
+ return (R) this;
+ }
+
+ @Override
+ public R from(TableDef... tableDefs) {
+ super.from(tableDefs);
+ return (R) this;
+ }
+
+ @Override
+ public R from(Class>... entityClasses) {
+ super.from(entityClasses);
+ return (R) this;
+ }
+
+ @Override
+ public R from(String... tables) {
+ super.from(tables);
+ return (R) this;
+ }
+
+ @Override
+ public R from(QueryTable... tables) {
+ super.from(tables);
+ return (R) this;
+ }
+
+ @Override
+ public R from(QueryWrapper queryWrapper) {
+ super.from(queryWrapper);
+ return (R) this;
+ }
+
+ @Override
+ public R as(String alias) {
+ super.as(alias);
+ return (R) this;
+ }
+
+ @Override
+ public R where(QueryCondition queryCondition) {
+ super.where(queryCondition);
+ return (R) this;
+ }
+
+ @Override
+ public R where(String sql) {
+ super.where(sql);
+ return (R) this;
+ }
+
+ @Override
+ public R where(String sql, Object... params) {
+ super.where(sql, params);
+ return (R) this;
+ }
+
+ @Override
+ public R where(Map whereConditions) {
+ super.where(whereConditions);
+ return (R) this;
+ }
+
+ @Override
+ public R where(Map whereConditions, Map operators) {
+ super.where(whereConditions, operators);
+ return (R) this;
+ }
+
+ @Override
+ public QueryConditionBuilder where(LambdaGetter fn) {
+ return new QueryConditionBuilder<>((R) this, LambdaUtil.getQueryColumn(fn), SqlConnector.AND);
+ }
+
+ @Override
+ public R and(QueryCondition queryCondition) {
+ super.and(queryCondition);
+ return (R) this;
+ }
+
+ @Override
+ public R and(String sql) {
+ super.and(sql);
+ return (R) this;
+ }
+
+ @Override
+ public R and(String sql, Object... params) {
+ super.and(sql, params);
+ return (R) this;
+ }
+
+ @Override
+ public QueryConditionBuilder and(LambdaGetter fn) {
+ return super.and(fn);
+ }
+
+ @Override
+ public R and(Consumer consumer) {
+ super.and(consumer);
+ return (R) this;
+ }
+
+ @Override
+ public R and(Map whereConditions) {
+ super.and(whereConditions);
+ return (R) this;
+ }
+
+ @Override
+ public R and(Map whereConditions, Map operators) {
+ super.and(whereConditions, operators);
+ return (R) this;
+ }
+
+ @Override
+ public QueryWrapper and(Map whereConditions, Map operators, SqlConnector innerConnector) {
+ return super.and(whereConditions, operators, innerConnector);
+ }
+
+ @Override
+ public R or(QueryCondition queryCondition) {
+ super.or(queryCondition);
+ return (R) this;
+ }
+
+ @Override
+ public R or(String sql) {
+ super.or(sql);
+ return (R) this;
+ }
+
+ @Override
+ public R or(String sql, Object... params) {
+ super.or(sql, params);
+ return (R) this;
+ }
+
+ @Override
+ public QueryConditionBuilder or(LambdaGetter fn) {
+ return super.or(fn);
+ }
+
+ @Override
+ public R or(Consumer consumer) {
+ super.or(consumer);
+ return (R) this;
+ }
+
+ @Override
+ public R or(Map whereConditions) {
+ super.or(whereConditions);
+ return (R) this;
+ }
+
+ @Override
+ public R or(Map whereConditions, Map operators) {
+ super.or(whereConditions, operators);
+ return (R) this;
+ }
+
+ @Override
+ public QueryWrapper or(Map whereConditions, Map operators, SqlConnector innerConnector) {
+ return super.or(whereConditions, operators, innerConnector);
+ }
+
+ @Override
+ public Joiner leftJoin(String table) {
+ return super.leftJoin(table);
+ }
+
+ @Override
+ public Joiner leftJoin(String table, boolean when) {
+ return super.leftJoin(table, when);
+ }
+
+ @Override
+ public Joiner leftJoin(Class entityClass) {
+ return super.leftJoin(entityClass);
+ }
+
+ @Override
+ public Joiner leftJoin(Class entityClass, boolean when) {
+ return super.leftJoin(entityClass, when);
+ }
+
+ @Override
+ public Joiner leftJoin(TableDef table) {
+ return super.leftJoin(table);
+ }
+
+ @Override
+ public Joiner leftJoin(TableDef table, boolean when) {
+ return super.leftJoin(table, when);
+ }
+
+ @Override
+ public Joiner leftJoin(QueryWrapper table) {
+ return super.leftJoin(table);
+ }
+
+ @Override
+ public Joiner leftJoin(QueryWrapper table, boolean when) {
+ return super.leftJoin(table, when);
+ }
+
+ @Override
+ public Joiner rightJoin(String table) {
+ return super.rightJoin(table);
+ }
+
+ @Override
+ public Joiner rightJoin(String table, boolean when) {
+ return super.rightJoin(table, when);
+ }
+
+ @Override
+ public Joiner rightJoin(Class entityClass) {
+ return super.rightJoin(entityClass);
+ }
+
+ @Override
+ public Joiner rightJoin(Class entityClass, boolean when) {
+ return super.rightJoin(entityClass, when);
+ }
+
+ @Override
+ public Joiner rightJoin(TableDef table) {
+ return super.rightJoin(table);
+ }
+
+ @Override
+ public Joiner rightJoin(TableDef table, boolean when) {
+ return super.rightJoin(table, when);
+ }
+
+ @Override
+ public Joiner rightJoin(QueryWrapper table) {
+ return super.rightJoin(table);
+ }
+
+ @Override
+ public Joiner rightJoin(QueryWrapper table, boolean when) {
+ return super.rightJoin(table, when);
+ }
+
+ @Override
+ public Joiner innerJoin(String table) {
+ return super.innerJoin(table);
+ }
+
+ @Override
+ public Joiner innerJoin(String table, boolean when) {
+ return super.innerJoin(table, when);
+ }
+
+ @Override
+ public Joiner innerJoin(Class entityClass) {
+ return super.innerJoin(entityClass);
+ }
+
+ @Override
+ public Joiner innerJoin(Class entityClass, boolean when) {
+ return super.innerJoin(entityClass, when);
+ }
+
+ @Override
+ public Joiner innerJoin(TableDef table) {
+ return super.innerJoin(table);
+ }
+
+ @Override
+ public Joiner innerJoin(TableDef table, boolean when) {
+ return super.innerJoin(table, when);
+ }
+
+ @Override
+ public Joiner innerJoin(QueryWrapper table) {
+ return super.innerJoin(table);
+ }
+
+ @Override
+ public Joiner innerJoin(QueryWrapper table, boolean when) {
+ return super.innerJoin(table, when);
+ }
+
+ @Override
+ public Joiner fullJoin(String table) {
+ return super.fullJoin(table);
+ }
+
+ @Override
+ public Joiner fullJoin(String table, boolean when) {
+ return super.fullJoin(table, when);
+ }
+
+ @Override
+ public Joiner fullJoin(Class entityClass) {
+ return super.fullJoin(entityClass);
+ }
+
+ @Override
+ public Joiner fullJoin(Class entityClass, boolean when) {
+ return super.fullJoin(entityClass, when);
+ }
+
+ @Override
+ public Joiner fullJoin(TableDef table) {
+ return super.fullJoin(table);
+ }
+
+ @Override
+ public Joiner fullJoin(TableDef table, boolean when) {
+ return super.fullJoin(table, when);
+ }
+
+ @Override
+ public Joiner fullJoin(QueryWrapper table) {
+ return super.fullJoin(table);
+ }
+
+ @Override
+ public Joiner fullJoin(QueryWrapper table, boolean when) {
+ return super.fullJoin(table, when);
+ }
+
+ @Override
+ public Joiner crossJoin(String table) {
+ return super.crossJoin(table);
+ }
+
+ @Override
+ public Joiner crossJoin(String table, boolean when) {
+ return super.crossJoin(table, when);
+ }
+
+ @Override
+ public Joiner crossJoin(Class entityClass) {
+ return super.crossJoin(entityClass);
+ }
+
+ @Override
+ public Joiner crossJoin(Class entityClass, boolean when) {
+ return super.crossJoin(entityClass, when);
+ }
+
+ @Override
+ public Joiner crossJoin(TableDef table) {
+ return super.crossJoin(table);
+ }
+
+ @Override
+ public Joiner crossJoin(TableDef table, boolean when) {
+ return super.crossJoin(table, when);
+ }
+
+ @Override
+ public Joiner crossJoin(QueryWrapper table) {
+ return super.crossJoin(table);
+ }
+
+ @Override
+ public Joiner crossJoin(QueryWrapper table, boolean when) {
+ return super.crossJoin(table, when);
+ }
+
+ @Override
+ public Joiner join(String table) {
+ return super.join(table);
+ }
+
+ @Override
+ public Joiner join(String table, boolean when) {
+ return super.join(table, when);
+ }
+
+ @Override
+ public Joiner join(Class entityClass) {
+ return super.join(entityClass);
+ }
+
+ @Override
+ public Joiner join(Class entityClass, boolean when) {
+ return super.join(entityClass, when);
+ }
+
+ @Override
+ public Joiner join(TableDef table) {
+ return super.join(table);
+ }
+
+ @Override
+ public Joiner join(TableDef table, boolean when) {
+ return super.join(table, when);
+ }
+
+ @Override
+ public Joiner join(QueryWrapper table) {
+ return super.join(table);
+ }
+
+ @Override
+ public Joiner join(QueryWrapper table, boolean when) {
+ return super.join(table, when);
+ }
+
+ @Override
+ public R union(QueryWrapper unionQuery) {
+ super.union(unionQuery);
+ return (R) this;
+ }
+
+ @Override
+ public R unionAll(QueryWrapper unionQuery) {
+ super.unionAll(unionQuery);
+ return (R) this;
+ }
+
+ @Override
+ public R forUpdate() {
+ super.forUpdate();
+ return (R) this;
+ }
+
+ @Override
+ public R forUpdateNoWait() {
+ super.forUpdateNoWait();
+ return (R) this;
+ }
+
+ @Override
+ public R groupBy(String name) {
+ super.groupBy(name);
+ return (R) this;
+ }
+
+ @Override
+ public R groupBy(String... names) {
+ super.groupBy(names);
+ return (R) this;
+ }
+
+ @Override
+ public R groupBy(QueryColumn column) {
+ super.groupBy(column);
+ return (R) this;
+ }
+
+ @Override
+ public R groupBy(QueryColumn... columns) {
+ super.groupBy(columns);
+ return (R) this;
+ }
+
+ @Override
+ public R having(QueryCondition queryCondition) {
+ super.having(queryCondition);
+ return (R) this;
+ }
+
+ @Override
+ public R orderBy(QueryOrderBy... orderBys) {
+ super.orderBy(orderBys);
+ return (R) this;
+ }
+
+ @Override
+ public R orderBy(String... orderBys) {
+ super.orderBy(orderBys);
+ return (R) this;
+ }
+
+ @Override
+ public R limit(Integer rows) {
+ super.limit(rows);
+ return (R) this;
+ }
+
+ @Override
+ public R offset(Integer offset) {
+ super.offset(offset);
+ return (R) this;
+ }
+
+ @Override
+ public R limit(Integer offset, Integer rows) {
+ super.limit(offset, rows);
+ return (R) this;
+ }
+
+ @Override
+ public R datasource(String datasource) {
+ super.datasource(datasource);
+ return (R) this;
+ }
+
+ @Override
+ public R hint(String hint) {
+ super.hint(hint);
+ return (R) this;
+ }
+
+ @Override
+ public R clone() {
+ return (R) super.clone();
+ }
+
+}