diff --git a/pom.xml b/pom.xml index d385213e6..4f9a17b5f 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ com.easy-query easy-query-all pom - 1.9.37 + 1.10.0 easy-query java object query distributed connector https://github.com/xuejmnet/easy-query diff --git a/samples/console-demo/pom.xml b/samples/console-demo/pom.xml index d01f55cc8..73fd9fab7 100644 --- a/samples/console-demo/pom.xml +++ b/samples/console-demo/pom.xml @@ -6,7 +6,7 @@ com.easy-query samples - 1.9.37 + 1.10.0 console-demo @@ -22,21 +22,21 @@ com.easy-query sql-mysql - 1.9.37 + 1.10.0 compile com.easy-query sql-processor - 1.9.37 + 1.10.0 compile com.easy-query sql-api-proxy - 1.9.37 + 1.10.0 compile diff --git a/samples/easy-query-solon-web/pom.xml b/samples/easy-query-solon-web/pom.xml index 3032fd6c7..0c88e6b5b 100644 --- a/samples/easy-query-solon-web/pom.xml +++ b/samples/easy-query-solon-web/pom.xml @@ -6,7 +6,7 @@ com.easy-query samples - 1.9.37 + 1.10.0 com.easy.query.solon @@ -22,13 +22,13 @@ com.easy-query sql-solon-plugin - 1.9.37 + 1.10.0 compile com.easy-query sql-processor - 1.9.37 + 1.10.0 compile diff --git a/samples/pom.xml b/samples/pom.xml index 8ab9f63b8..7be01177b 100644 --- a/samples/pom.xml +++ b/samples/pom.xml @@ -5,7 +5,7 @@ easy-query-all com.easy-query - 1.9.37 + 1.10.0 4.0.0 @@ -43,7 +43,7 @@ com.easy-query sql-springboot-starter - 1.9.37 + 1.10.0 compile diff --git a/samples/solon-sharding-demo/pom.xml b/samples/solon-sharding-demo/pom.xml index 189a57fff..364b1f89a 100644 --- a/samples/solon-sharding-demo/pom.xml +++ b/samples/solon-sharding-demo/pom.xml @@ -6,7 +6,7 @@ com.easy-query samples - 1.9.37 + 1.10.0 com.easy.query @@ -22,7 +22,7 @@ com.easy-query sql-solon-plugin - 1.9.37 + 1.10.0 compile diff --git a/samples/spring-sharding-demo/pom.xml b/samples/spring-sharding-demo/pom.xml index 964fc57e2..d7f92f152 100644 --- a/samples/spring-sharding-demo/pom.xml +++ b/samples/spring-sharding-demo/pom.xml @@ -55,13 +55,13 @@ com.easy-query sql-processor - 1.9.37 + 1.10.0 compile com.easy-query sql-springboot-starter - 1.9.37 + 1.10.0 compile diff --git a/samples/springbootdemo/pom.xml b/samples/springbootdemo/pom.xml index 2f74d797a..f70a07883 100644 --- a/samples/springbootdemo/pom.xml +++ b/samples/springbootdemo/pom.xml @@ -84,25 +84,25 @@ com.easy-query sql-core - 1.9.37 + 1.10.0 compile com.easy-query sql-api4j - 1.9.37 + 1.10.0 compile com.easy-query sql-springboot-starter - 1.9.37 + 1.10.0 compile com.easy-query sql-cache - 1.9.37 + 1.10.0 compile diff --git a/sql-core/pom.xml b/sql-core/pom.xml index 94b5f7f80..62ea5fa46 100644 --- a/sql-core/pom.xml +++ b/sql-core/pom.xml @@ -5,7 +5,7 @@ easy-query-all com.easy-query - 1.9.37 + 1.10.0 4.0.0 diff --git a/sql-db-support/pom.xml b/sql-db-support/pom.xml index 348ff690f..b2848e853 100644 --- a/sql-db-support/pom.xml +++ b/sql-db-support/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 sql-db-support diff --git a/sql-db-support/sql-dameng/pom.xml b/sql-db-support/sql-dameng/pom.xml index 2fd9c02e3..fa3136c7c 100644 --- a/sql-db-support/sql-dameng/pom.xml +++ b/sql-db-support/sql-dameng/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-db-support/sql-gauss-db/pom.xml b/sql-db-support/sql-gauss-db/pom.xml index a630ec4d4..49ec28fd8 100644 --- a/sql-db-support/sql-gauss-db/pom.xml +++ b/sql-db-support/sql-gauss-db/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-db-support/sql-h2/pom.xml b/sql-db-support/sql-h2/pom.xml index 077d4a548..ab3893ebf 100644 --- a/sql-db-support/sql-h2/pom.xml +++ b/sql-db-support/sql-h2/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-db-support/sql-kingbase-es/pom.xml b/sql-db-support/sql-kingbase-es/pom.xml index cc956802f..0101bd021 100644 --- a/sql-db-support/sql-kingbase-es/pom.xml +++ b/sql-db-support/sql-kingbase-es/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml sql-kingbase-es diff --git a/sql-db-support/sql-mssql/pom.xml b/sql-db-support/sql-mssql/pom.xml index 0afeff60e..4519c0e28 100644 --- a/sql-db-support/sql-mssql/pom.xml +++ b/sql-db-support/sql-mssql/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-db-support/sql-mysql/pom.xml b/sql-db-support/sql-mysql/pom.xml index f1a3bab0b..d69a328ce 100644 --- a/sql-db-support/sql-mysql/pom.xml +++ b/sql-db-support/sql-mysql/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-db-support/sql-oracle/pom.xml b/sql-db-support/sql-oracle/pom.xml index ca686ab79..6d98b6ba3 100644 --- a/sql-db-support/sql-oracle/pom.xml +++ b/sql-db-support/sql-oracle/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-db-support/sql-pgsql/pom.xml b/sql-db-support/sql-pgsql/pom.xml index 495f7e235..57d045f4c 100644 --- a/sql-db-support/sql-pgsql/pom.xml +++ b/sql-db-support/sql-pgsql/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-db-support/sql-sqlite/pom.xml b/sql-db-support/sql-sqlite/pom.xml index 66a8e5a1a..6819bf332 100644 --- a/sql-db-support/sql-sqlite/pom.xml +++ b/sql-db-support/sql-sqlite/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-extension/pom.xml b/sql-extension/pom.xml index 9f1f6675b..5fbc97bff 100644 --- a/sql-extension/pom.xml +++ b/sql-extension/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 sql-extension diff --git a/sql-extension/sql-cache/pom.xml b/sql-extension/sql-cache/pom.xml index b2791b553..edbb5dd3d 100644 --- a/sql-extension/sql-cache/pom.xml +++ b/sql-extension/sql-cache/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-extension/sql-kt-springboot-starter/pom.xml b/sql-extension/sql-kt-springboot-starter/pom.xml index 16463f2d0..97fafd0b3 100644 --- a/sql-extension/sql-kt-springboot-starter/pom.xml +++ b/sql-extension/sql-kt-springboot-starter/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-extension/sql-solon-plugin/pom.xml b/sql-extension/sql-solon-plugin/pom.xml index 6b0451dd8..517e4d8b7 100644 --- a/sql-extension/sql-solon-plugin/pom.xml +++ b/sql-extension/sql-solon-plugin/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-extension/sql-springboot-starter/pom.xml b/sql-extension/sql-springboot-starter/pom.xml index 65e6d294a..c6c5b8c4a 100644 --- a/sql-extension/sql-springboot-starter/pom.xml +++ b/sql-extension/sql-springboot-starter/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 ../../pom.xml diff --git a/sql-platform/pom.xml b/sql-platform/pom.xml index d2699b039..40cee5133 100644 --- a/sql-platform/pom.xml +++ b/sql-platform/pom.xml @@ -6,7 +6,7 @@ com.easy-query easy-query-all - 1.9.37 + 1.10.0 sql-platform diff --git a/sql-platform/sql-api-proxy/pom.xml b/sql-platform/sql-api-proxy/pom.xml index bd57bd075..0a5f59ab7 100644 --- a/sql-platform/sql-api-proxy/pom.xml +++ b/sql-platform/sql-api-proxy/pom.xml @@ -6,7 +6,7 @@ com.easy-query sql-platform - 1.9.37 + 1.10.0 sql-api-proxy diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable/EntityIncludeable1.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable/EntityIncludeable1.java index c7b9a7e0f..f98629780 100644 --- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable/EntityIncludeable1.java +++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable/EntityIncludeable1.java @@ -3,15 +3,13 @@ import com.easy.query.api.proxy.entity.EntityQueryProxyManager; import com.easy.query.api.proxy.entity.select.EntityQueryable; import com.easy.query.api.proxy.entity.select.impl.EasyEntityQueryable; -import com.easy.query.api.proxy.sql.ProxyEntityNavigateInclude; -import com.easy.query.api.proxy.sql.impl.ProxyEntityNavigateIncludeImpl; import com.easy.query.core.basic.api.select.ClientQueryable; import com.easy.query.core.expression.lambda.SQLExpression1; import com.easy.query.core.expression.lambda.SQLFuncExpression1; -import com.easy.query.core.expression.lambda.SQLFuncExpression2; import com.easy.query.core.proxy.ProxyEntity; import com.easy.query.core.proxy.ProxyEntityAvailable; -import com.easy.query.core.proxy.columns.SQLNavigateColumn; + +import java.util.Objects; /** * create time 2023/8/17 13:34 @@ -21,43 +19,6 @@ */ public interface EntityIncludeable1, T1> extends ClientEntityQueryableAvailable, EntityQueryableAvailable { - /** - * 请使用 - * {@link #include(SQLFuncExpression1)} - * {@link #include(SQLFuncExpression1, Integer)} - * {@link #include(SQLFuncExpression1, SQLExpression1, Integer)} - * - * @param navigateIncludeSQLExpression - * @return - * @param - * @param - */ - @Deprecated - default , TProperty extends ProxyEntityAvailable> EntityQueryable include(SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) { - return include(true, navigateIncludeSQLExpression); - } - - /** - * 请使用 - * {@link #include(SQLFuncExpression1)} - * {@link #include(SQLFuncExpression1, Integer)} - * {@link #include(SQLFuncExpression1, SQLExpression1, Integer)} - * - * @param condition - * @param navigateIncludeSQLExpression - * @return - * @param - * @param - */ - @Deprecated - default , TProperty extends ProxyEntityAvailable> EntityQueryable include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) { - if (condition) { - T1Proxy proxy = getQueryable().get1Proxy(); - getClientQueryable().include(navigateInclude -> navigateIncludeSQLExpression.apply(new ProxyEntityNavigateIncludeImpl<>(proxy, navigateInclude), proxy).getClientQueryable()); - } - return getQueryable(); - } - /** *
      * {@code
@@ -70,7 +31,7 @@ default , TPropert
      * @param 
      * @param 
      */
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable include(SQLFuncExpression1> navigateIncludeSQLExpression) {
+    default , TProperty extends ProxyEntityAvailable> EntityQueryable include(SQLFuncExpression1 navigateIncludeSQLExpression) {
         return include(navigateIncludeSQLExpression, o -> {
         }, null);
     }
@@ -88,7 +49,7 @@ default , TPropert
      * @param 
      * @param 
      */
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable include(SQLFuncExpression1> navigateIncludeSQLExpression, Integer groupSize) {
+    default , TProperty extends ProxyEntityAvailable> EntityQueryable include(SQLFuncExpression1 navigateIncludeSQLExpression, Integer groupSize) {
         return include(navigateIncludeSQLExpression, o -> {
         }, groupSize);
     }
@@ -106,7 +67,7 @@ default , TPropert
      * @param 
      * @param 
      */
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable include(SQLFuncExpression1> navigateIncludeSQLExpression, SQLExpression1> includeAdapterExpression) {
+    default , TProperty extends ProxyEntityAvailable> EntityQueryable include(SQLFuncExpression1 navigateIncludeSQLExpression, SQLExpression1> includeAdapterExpression) {
         return include(navigateIncludeSQLExpression, includeAdapterExpression, null);
     }
 
@@ -124,12 +85,12 @@ default , TPropert
      * @param 
      * @param 
      */
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable include(SQLFuncExpression1> navigateIncludeSQLExpression, SQLExpression1> includeAdapterExpression, Integer groupSize) {
+    default , TProperty extends ProxyEntityAvailable> EntityQueryable include(SQLFuncExpression1 navigateIncludeSQLExpression, SQLExpression1> includeAdapterExpression, Integer groupSize) {
         T1Proxy proxy = getQueryable().get1Proxy();
-        SQLNavigateColumn navigateColumn = navigateIncludeSQLExpression.apply(proxy);
-
+        TPropertyProxy navigateColumn = navigateIncludeSQLExpression.apply(proxy);
+        Objects.requireNonNull(navigateColumn.getNavValue(),"include [navValue] is null");
         getClientQueryable().include(navigateInclude -> {
-            ClientQueryable clientQueryable = navigateInclude.with(navigateColumn.getValue(), groupSize);
+            ClientQueryable clientQueryable = navigateInclude.with(navigateColumn.getNavValue(), groupSize);
             TPropertyProxy tPropertyProxy = EntityQueryProxyManager.create(clientQueryable.queryClass());
             EasyEntityQueryable entityQueryable = new EasyEntityQueryable<>(tPropertyProxy, clientQueryable);
             includeAdapterExpression.apply(entityQueryable);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable10/override/AbstractOverrideEntityQueryable10.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable10/override/AbstractOverrideEntityQueryable10.java
index 825992a9a..abc210e7b 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable10/override/AbstractOverrideEntityQueryable10.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable10/override/AbstractOverrideEntityQueryable10.java
@@ -1,18 +1,14 @@
 package com.easy.query.api.proxy.entity.select.extension.queryable10.override;
 
-import com.easy.query.api.proxy.entity.select.EntityQueryable;
 import com.easy.query.api.proxy.entity.select.EntityQueryable10;
 import com.easy.query.api.proxy.entity.select.abstraction.AbstractEntityQueryable;
 import com.easy.query.api.proxy.entity.select.extension.queryable10.EntityQueryable10Available;
-import com.easy.query.api.proxy.sql.ProxyEntityNavigateInclude;
 import com.easy.query.core.api.dynamic.sort.ObjectSort;
 import com.easy.query.core.basic.api.select.ClientQueryable10;
 import com.easy.query.core.enums.sharding.ConnectionModeEnum;
 import com.easy.query.core.expression.builder.core.ValueFilter;
 import com.easy.query.core.expression.lambda.SQLExpression1;
-import com.easy.query.core.expression.lambda.SQLFuncExpression2;
 import com.easy.query.core.proxy.ProxyEntity;
-import com.easy.query.core.proxy.ProxyEntityAvailable;
 
 import java.util.Collection;
 import java.util.function.Function;
@@ -82,14 +78,6 @@ public EntityQueryable10, TProperty extends ProxyEntityAvailable> EntityQueryable10 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        super.include(condition, navigateIncludeSQLExpression);
-        return getQueryable10();
-    }
-
     @Override
     public EntityQueryable10 limit(boolean condition, long offset, long rows) {
         super.limit(condition, offset, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable10/override/OverrideEntityQueryable10.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable10/override/OverrideEntityQueryable10.java
index 843107d16..80d42b69e 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable10/override/OverrideEntityQueryable10.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable10/override/OverrideEntityQueryable10.java
@@ -95,14 +95,6 @@ default EntityQueryable10 orderBy(boolean condition, SQLExpression1 selectExpression);
 
-    @Override
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable10 include(SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        return include(true, navigateIncludeSQLExpression);
-    }
-
-    @Override
-    , TProperty extends ProxyEntityAvailable> EntityQueryable10 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression);
-
     @Override
     default EntityQueryable10 limit(long rows) {
         return limit(true, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable2/override/AbstractOverrideEntityQueryable2.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable2/override/AbstractOverrideEntityQueryable2.java
index 7bcad6030..e42ffd2b2 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable2/override/AbstractOverrideEntityQueryable2.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable2/override/AbstractOverrideEntityQueryable2.java
@@ -1,20 +1,14 @@
 package com.easy.query.api.proxy.entity.select.extension.queryable2.override;
 
-import com.easy.query.api.proxy.entity.select.EntityQueryable;
 import com.easy.query.api.proxy.entity.select.EntityQueryable2;
 import com.easy.query.api.proxy.entity.select.abstraction.AbstractEntityQueryable;
 import com.easy.query.api.proxy.entity.select.extension.queryable2.EntityQueryable2Available;
-import com.easy.query.api.proxy.sql.ProxyEntityNavigateInclude;
 import com.easy.query.core.api.dynamic.sort.ObjectSort;
 import com.easy.query.core.basic.api.select.ClientQueryable2;
 import com.easy.query.core.enums.sharding.ConnectionModeEnum;
 import com.easy.query.core.expression.builder.core.ValueFilter;
 import com.easy.query.core.expression.lambda.SQLExpression1;
-import com.easy.query.core.expression.lambda.SQLFuncExpression1;
-import com.easy.query.core.expression.lambda.SQLFuncExpression2;
 import com.easy.query.core.proxy.ProxyEntity;
-import com.easy.query.core.proxy.ProxyEntityAvailable;
-import com.easy.query.core.proxy.SQLGroupByExpression;
 
 import java.util.Collection;
 import java.util.function.Function;
@@ -75,12 +69,6 @@ public EntityQueryable2 having(boolean condition, SQLE
         return getQueryable2();
     }
 
-    @Override
-    public , TProperty  extends ProxyEntityAvailable> EntityQueryable2 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        super.include(condition, navigateIncludeSQLExpression);
-        return getQueryable2();
-    }
-
     @Override
     public EntityQueryable2 limit(boolean condition, long offset, long rows) {
         super.limit(condition, offset, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable2/override/OverrideEntityQueryable2.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable2/override/OverrideEntityQueryable2.java
index ae6830539..c90a5744e 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable2/override/OverrideEntityQueryable2.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable2/override/OverrideEntityQueryable2.java
@@ -85,14 +85,6 @@ default EntityQueryable2 orderBy(SQLExpression1 orderBy(boolean condition, SQLExpression1 selectExpression);
 
-    @Override
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable2 include(SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        return include(true, navigateIncludeSQLExpression);
-    }
-
-    @Override
-    , TProperty extends ProxyEntityAvailable> EntityQueryable2 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression);
-
     @Override
     default EntityQueryable2 limit(long rows) {
         return limit(true, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable3/override/AbstractOverrideEntityQueryable3.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable3/override/AbstractOverrideEntityQueryable3.java
index 8dbf71d3f..ed149fe16 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable3/override/AbstractOverrideEntityQueryable3.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable3/override/AbstractOverrideEntityQueryable3.java
@@ -1,18 +1,14 @@
 package com.easy.query.api.proxy.entity.select.extension.queryable3.override;
 
-import com.easy.query.api.proxy.entity.select.EntityQueryable;
 import com.easy.query.api.proxy.entity.select.EntityQueryable3;
 import com.easy.query.api.proxy.entity.select.abstraction.AbstractEntityQueryable;
 import com.easy.query.api.proxy.entity.select.extension.queryable3.EntityQueryable3Available;
-import com.easy.query.api.proxy.sql.ProxyEntityNavigateInclude;
 import com.easy.query.core.api.dynamic.sort.ObjectSort;
 import com.easy.query.core.basic.api.select.ClientQueryable3;
 import com.easy.query.core.enums.sharding.ConnectionModeEnum;
 import com.easy.query.core.expression.builder.core.ValueFilter;
 import com.easy.query.core.expression.lambda.SQLExpression1;
-import com.easy.query.core.expression.lambda.SQLFuncExpression2;
 import com.easy.query.core.proxy.ProxyEntity;
-import com.easy.query.core.proxy.ProxyEntityAvailable;
 
 import java.util.Collection;
 import java.util.function.Function;
@@ -80,13 +76,6 @@ public EntityQueryable3 having(boolean co
 //        return getQueryable3();
 //    }
 
-
-    @Override
-    public , TProperty extends ProxyEntityAvailable> EntityQueryable3 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-         super.include(condition, navigateIncludeSQLExpression);
-        return getQueryable3();
-    }
-
     @Override
     public EntityQueryable3 limit(boolean condition, long offset, long rows) {
         super.limit(condition, offset, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable3/override/OverrideEntityQueryable3.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable3/override/OverrideEntityQueryable3.java
index 68e27021e..91cf63d90 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable3/override/OverrideEntityQueryable3.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable3/override/OverrideEntityQueryable3.java
@@ -3,14 +3,11 @@
 import com.easy.query.api.proxy.entity.select.EntityQueryable;
 import com.easy.query.api.proxy.entity.select.EntityQueryable3;
 import com.easy.query.api.proxy.entity.select.extension.queryable3.EntityQueryable3Available;
-import com.easy.query.api.proxy.sql.ProxyEntityNavigateInclude;
 import com.easy.query.core.api.client.EasyQueryClient;
 import com.easy.query.core.enums.sharding.ConnectionModeEnum;
 import com.easy.query.core.expression.builder.core.ValueFilter;
 import com.easy.query.core.expression.lambda.SQLExpression1;
-import com.easy.query.core.expression.lambda.SQLFuncExpression2;
 import com.easy.query.core.proxy.ProxyEntity;
-import com.easy.query.core.proxy.ProxyEntityAvailable;
 
 import java.util.Collection;
 import java.util.function.Function;
@@ -83,14 +80,6 @@ default EntityQueryable3 orderBy(SQLExpre
     @Override
     EntityQueryable3 orderBy(boolean condition, SQLExpression1 selectExpression);
 
-    @Override
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable3 include(SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        return include(true, navigateIncludeSQLExpression);
-    }
-
-    @Override
-    , TProperty extends ProxyEntityAvailable> EntityQueryable3 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression);
-
     @Override
     default EntityQueryable3 limit(long rows) {
         return limit(true, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable4/override/AbstractOverrideEntityQueryable4.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable4/override/AbstractOverrideEntityQueryable4.java
index 05f6ebf88..cfcc8f5b5 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable4/override/AbstractOverrideEntityQueryable4.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable4/override/AbstractOverrideEntityQueryable4.java
@@ -1,18 +1,14 @@
 package com.easy.query.api.proxy.entity.select.extension.queryable4.override;
 
-import com.easy.query.api.proxy.entity.select.EntityQueryable;
 import com.easy.query.api.proxy.entity.select.EntityQueryable4;
 import com.easy.query.api.proxy.entity.select.abstraction.AbstractEntityQueryable;
 import com.easy.query.api.proxy.entity.select.extension.queryable4.EntityQueryable4Available;
-import com.easy.query.api.proxy.sql.ProxyEntityNavigateInclude;
 import com.easy.query.core.api.dynamic.sort.ObjectSort;
 import com.easy.query.core.basic.api.select.ClientQueryable4;
 import com.easy.query.core.enums.sharding.ConnectionModeEnum;
 import com.easy.query.core.expression.builder.core.ValueFilter;
 import com.easy.query.core.expression.lambda.SQLExpression1;
-import com.easy.query.core.expression.lambda.SQLFuncExpression2;
 import com.easy.query.core.proxy.ProxyEntity;
-import com.easy.query.core.proxy.ProxyEntityAvailable;
 
 import java.util.Collection;
 import java.util.function.Function;
@@ -77,12 +73,6 @@ public EntityQueryable4 havi
         super.having(condition, predicateExpression);
         return getQueryable4();
     }
-    @Override
-    public , TProperty extends ProxyEntityAvailable> EntityQueryable4 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        super.include(condition, navigateIncludeSQLExpression);
-        return getQueryable4();
-    }
-
     @Override
     public EntityQueryable4 limit(boolean condition, long offset, long rows) {
         super.limit(condition, offset, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable4/override/OverrideEntityQueryable4.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable4/override/OverrideEntityQueryable4.java
index d785c179c..88f4d3b97 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable4/override/OverrideEntityQueryable4.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable4/override/OverrideEntityQueryable4.java
@@ -3,14 +3,11 @@
 import com.easy.query.api.proxy.entity.select.EntityQueryable;
 import com.easy.query.api.proxy.entity.select.EntityQueryable4;
 import com.easy.query.api.proxy.entity.select.extension.queryable4.EntityQueryable4Available;
-import com.easy.query.api.proxy.sql.ProxyEntityNavigateInclude;
 import com.easy.query.core.api.client.EasyQueryClient;
 import com.easy.query.core.enums.sharding.ConnectionModeEnum;
 import com.easy.query.core.expression.builder.core.ValueFilter;
 import com.easy.query.core.expression.lambda.SQLExpression1;
-import com.easy.query.core.expression.lambda.SQLFuncExpression2;
 import com.easy.query.core.proxy.ProxyEntity;
-import com.easy.query.core.proxy.ProxyEntityAvailable;
 
 import java.util.Collection;
 import java.util.function.Function;
@@ -87,14 +84,6 @@ default EntityQueryable4 ord
     @Override
     EntityQueryable4 orderBy(boolean condition, SQLExpression1 selectExpression);
 
-    @Override
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable4 include(SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        return include(true, navigateIncludeSQLExpression);
-    }
-
-    @Override
-    , TProperty extends ProxyEntityAvailable> EntityQueryable4 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression);
-
     @Override
     default EntityQueryable4 limit(long rows) {
         return limit(true, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable5/override/AbstractOverrideEntityQueryable5.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable5/override/AbstractOverrideEntityQueryable5.java
index ebd723fd6..bf85a1713 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable5/override/AbstractOverrideEntityQueryable5.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable5/override/AbstractOverrideEntityQueryable5.java
@@ -78,12 +78,6 @@ public EntityQueryable5, TProperty extends ProxyEntityAvailable> EntityQueryable5 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        super.include(condition, navigateIncludeSQLExpression);
-        return getQueryable5();
-    }
-
     @Override
     public EntityQueryable5 limit(boolean condition, long offset, long rows) {
         super.limit(condition, offset, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable5/override/OverrideEntityQueryable5.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable5/override/OverrideEntityQueryable5.java
index 53e4e4782..1a096fdf6 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable5/override/OverrideEntityQueryable5.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable5/override/OverrideEntityQueryable5.java
@@ -3,16 +3,11 @@
 import com.easy.query.api.proxy.entity.select.EntityQueryable;
 import com.easy.query.api.proxy.entity.select.EntityQueryable5;
 import com.easy.query.api.proxy.entity.select.extension.queryable5.EntityQueryable5Available;
-import com.easy.query.api.proxy.sql.ProxyEntityNavigateInclude;
 import com.easy.query.core.api.client.EasyQueryClient;
 import com.easy.query.core.enums.sharding.ConnectionModeEnum;
 import com.easy.query.core.expression.builder.core.ValueFilter;
 import com.easy.query.core.expression.lambda.SQLExpression1;
-import com.easy.query.core.expression.lambda.SQLFuncExpression1;
-import com.easy.query.core.expression.lambda.SQLFuncExpression2;
 import com.easy.query.core.proxy.ProxyEntity;
-import com.easy.query.core.proxy.ProxyEntityAvailable;
-import com.easy.query.core.proxy.SQLGroupByExpression;
 
 import java.util.Collection;
 import java.util.function.Function;
@@ -90,14 +85,6 @@ default EntityQueryable5 orderBy(boolean condition, SQLExpression1 selectExpression);
 
-    @Override
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable5 include(SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        return include(true, navigateIncludeSQLExpression);
-    }
-
-    @Override
-    , TProperty extends ProxyEntityAvailable> EntityQueryable5 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression);
-
     @Override
     default EntityQueryable5 limit(long rows) {
         return limit(true, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable6/override/AbstractOverrideEntityQueryable6.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable6/override/AbstractOverrideEntityQueryable6.java
index 3cac5b6b9..0c1962397 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable6/override/AbstractOverrideEntityQueryable6.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable6/override/AbstractOverrideEntityQueryable6.java
@@ -80,12 +80,6 @@ public EntityQueryable6, TProperty extends ProxyEntityAvailable> EntityQueryable6 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        super.include(condition, navigateIncludeSQLExpression);
-        return getQueryable6();
-    }
-
     @Override
     public EntityQueryable6 limit(boolean condition, long offset, long rows) {
         super.limit(condition, offset, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable6/override/OverrideEntityQueryable6.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable6/override/OverrideEntityQueryable6.java
index 8c8b94c34..5799671a6 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable6/override/OverrideEntityQueryable6.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable6/override/OverrideEntityQueryable6.java
@@ -3,16 +3,11 @@
 import com.easy.query.api.proxy.entity.select.EntityQueryable;
 import com.easy.query.api.proxy.entity.select.EntityQueryable6;
 import com.easy.query.api.proxy.entity.select.extension.queryable6.EntityQueryable6Available;
-import com.easy.query.api.proxy.sql.ProxyEntityNavigateInclude;
 import com.easy.query.core.api.client.EasyQueryClient;
 import com.easy.query.core.enums.sharding.ConnectionModeEnum;
 import com.easy.query.core.expression.builder.core.ValueFilter;
 import com.easy.query.core.expression.lambda.SQLExpression1;
-import com.easy.query.core.expression.lambda.SQLFuncExpression1;
-import com.easy.query.core.expression.lambda.SQLFuncExpression2;
 import com.easy.query.core.proxy.ProxyEntity;
-import com.easy.query.core.proxy.ProxyEntityAvailable;
-import com.easy.query.core.proxy.SQLGroupByExpression;
 
 import java.util.Collection;
 import java.util.function.Function;
@@ -91,14 +86,6 @@ default EntityQueryable6 orderBy(boolean condition, SQLExpression1 selectExpression);
 
-    @Override
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable6 include(SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        return include(true, navigateIncludeSQLExpression);
-    }
-
-    @Override
-    , TProperty extends ProxyEntityAvailable> EntityQueryable6 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression);
-
     @Override
     default EntityQueryable6 limit(long rows) {
         return limit(true, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable7/override/AbstractOverrideEntityQueryable7.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable7/override/AbstractOverrideEntityQueryable7.java
index deaa5a83f..20b451927 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable7/override/AbstractOverrideEntityQueryable7.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable7/override/AbstractOverrideEntityQueryable7.java
@@ -80,12 +80,6 @@ public EntityQueryable7, TProperty extends ProxyEntityAvailable> EntityQueryable7 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        super.include(condition, navigateIncludeSQLExpression);
-        return getQueryable7();
-    }
-
     @Override
     public EntityQueryable7 limit(boolean condition, long offset, long rows) {
         super.limit(condition, offset, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable7/override/OverrideEntityQueryable7.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable7/override/OverrideEntityQueryable7.java
index 0c179c4e5..61762cdd5 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable7/override/OverrideEntityQueryable7.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable7/override/OverrideEntityQueryable7.java
@@ -92,14 +92,6 @@ default EntityQueryable7 orderBy(boolean condition, SQLExpression1 selectExpression);
 
-    @Override
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable7 include(SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        return include(true, navigateIncludeSQLExpression);
-    }
-
-    @Override
-    , TProperty extends ProxyEntityAvailable> EntityQueryable7 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression);
-
     @Override
     default EntityQueryable7 limit(long rows) {
         return limit(true, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable8/override/AbstractOverrideEntityQueryable8.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable8/override/AbstractOverrideEntityQueryable8.java
index a662690cd..3b91ae547 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable8/override/AbstractOverrideEntityQueryable8.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable8/override/AbstractOverrideEntityQueryable8.java
@@ -81,13 +81,6 @@ public EntityQueryable8, TProperty extends ProxyEntityAvailable> EntityQueryable8 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        super.include(condition, navigateIncludeSQLExpression);
-        return getQueryable8();
-    }
-
     @Override
     public EntityQueryable8 limit(boolean condition, long offset, long rows) {
         super.limit(condition, offset, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable8/override/OverrideEntityQueryable8.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable8/override/OverrideEntityQueryable8.java
index e14b896a9..08a2a0c0e 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable8/override/OverrideEntityQueryable8.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable8/override/OverrideEntityQueryable8.java
@@ -93,14 +93,6 @@ default EntityQueryable8 orderBy(boolean condition, SQLExpression1 selectExpression);
 
-    @Override
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable8 include(SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        return include(true, navigateIncludeSQLExpression);
-    }
-
-    @Override
-    , TProperty extends ProxyEntityAvailable> EntityQueryable8 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression);
-
     @Override
     default EntityQueryable8 limit(long rows) {
         return limit(true, rows);
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable9/override/AbstractOverrideEntityQueryable9.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable9/override/AbstractOverrideEntityQueryable9.java
index 647a43236..805ebc782 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable9/override/AbstractOverrideEntityQueryable9.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable9/override/AbstractOverrideEntityQueryable9.java
@@ -52,11 +52,6 @@ public EntityQueryable9, TProperty extends ProxyEntityAvailable> EntityQueryable9 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        super.include(condition, navigateIncludeSQLExpression);
-        return getQueryable9();
-    }
 
     @Override
     public EntityQueryable9 whereById(boolean condition, Object id) {
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable9/override/OverrideEntityQueryable9.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable9/override/OverrideEntityQueryable9.java
index 49c8bed17..71d18a2aa 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable9/override/OverrideEntityQueryable9.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/entity/select/extension/queryable9/override/OverrideEntityQueryable9.java
@@ -99,15 +99,6 @@ default EntityQueryable9, TProperty extends ProxyEntityAvailable> EntityQueryable9 include(SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression) {
-        return include(true, navigateIncludeSQLExpression);
-    }
-
-    @Override
-    , TProperty extends ProxyEntityAvailable> EntityQueryable9 include(boolean condition, SQLFuncExpression2, T1Proxy, EntityQueryable> navigateIncludeSQLExpression);
-
 //    @Override
 //    , TProperty> EntityQueryable9 include(boolean condition, SQLFuncExpression1> navigateIncludeSQLExpression);
 
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/sql/ProxyEntityNavigateInclude.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/sql/ProxyEntityNavigateInclude.java
index 9bb95ad05..4a3e87962 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/sql/ProxyEntityNavigateInclude.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/sql/ProxyEntityNavigateInclude.java
@@ -7,7 +7,8 @@
 import com.easy.query.core.expression.parser.core.base.NavigateInclude;
 import com.easy.query.core.proxy.ProxyEntity;
 import com.easy.query.core.proxy.ProxyEntityAvailable;
-import com.easy.query.core.proxy.columns.SQLNavigateColumn;
+
+import java.util.Objects;
 
 /**
  * create time 2023/12/9 00:32
@@ -18,11 +19,12 @@
 public interface ProxyEntityNavigateInclude> {
     TProxy get1Proxy();
     NavigateInclude getNavigateInclude();
-    default , TProperty extends ProxyEntityAvailable> EntityQueryable asQueryable(SQLNavigateColumn sqlNavigateColumn){
+    default , TProperty extends ProxyEntityAvailable> EntityQueryable asQueryable(TPropertyProxy sqlNavigateColumn){
         return  asQueryable(sqlNavigateColumn,null);
     }
-    default , TProperty   extends ProxyEntityAvailable> EntityQueryable asQueryable(SQLNavigateColumn sqlNavigateColumn,Integer groupSize){
-        ClientQueryable clientQueryable = getNavigateInclude().with(sqlNavigateColumn.getValue(),groupSize);
+    default , TProperty   extends ProxyEntityAvailable> EntityQueryable asQueryable(TPropertyProxy sqlNavigateColumn,Integer groupSize){
+        Objects.requireNonNull(sqlNavigateColumn.getNavValue(),"include [navValue] is null");
+        ClientQueryable clientQueryable = getNavigateInclude().with(sqlNavigateColumn.getNavValue(),groupSize);
         TPropertyProxy tPropertyProxy = EntityQueryProxyManager.create(clientQueryable.queryClass());
         return new EasyEntityQueryable<>(tPropertyProxy,clientQueryable);
     }
diff --git a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/sql/ProxyNavigateInclude.java b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/sql/ProxyNavigateInclude.java
index 2704322c3..babf8cc6e 100644
--- a/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/sql/ProxyNavigateInclude.java
+++ b/sql-platform/sql-api-proxy/src/main/java/com/easy/query/api/proxy/sql/ProxyNavigateInclude.java
@@ -5,9 +5,9 @@
 import com.easy.query.core.basic.api.select.ClientQueryable;
 import com.easy.query.core.expression.parser.core.base.NavigateInclude;
 import com.easy.query.core.proxy.ProxyEntity;
-import com.easy.query.core.proxy.SQLColumn;
+import com.easy.query.core.proxy.columns.SQLQueryable;
 
-import java.util.Collection;
+import java.util.Objects;
 
 /**
  * create time 2023/6/18 11:14
@@ -17,18 +17,21 @@
  */
 public interface ProxyNavigateInclude {
     NavigateInclude getNavigateInclude();
-   default , TProperty,T1Proxy extends ProxyEntity> ProxyQueryable one(SQLColumn navigate,TPropertyProxy tPropertyProxy){
-       return  one(navigate,tPropertyProxy,null);
+   default , TProperty,T1Proxy extends ProxyEntity> ProxyQueryable one(TPropertyProxy tPropertyProxy){
+       return  one(tPropertyProxy,null);
    }
-   default , TProperty,T1Proxy extends ProxyEntity> ProxyQueryable one(SQLColumn navigate,TPropertyProxy tPropertyProxy,Integer groupSize){
-       ClientQueryable clientQueryable = getNavigateInclude().with(navigate.getValue(),groupSize);
+   default , TProperty,T1Proxy extends ProxyEntity> ProxyQueryable one(TPropertyProxy tPropertyProxy,Integer groupSize){
+
+       Objects.requireNonNull(tPropertyProxy.getNavValue(),"include [navValue] is null");
+       ClientQueryable clientQueryable = getNavigateInclude().with(tPropertyProxy.getNavValue(),groupSize);
        return new EasyProxyQueryable<>(tPropertyProxy,clientQueryable);
    }
-   default  , TProperty> ProxyQueryable many(SQLColumn> navigate,TPropertyProxy tPropertyProxy){
-       return many(navigate,tPropertyProxy,null);
+   default  , TProperty> ProxyQueryable many(SQLQueryable tPropertyProxy){
+       return many(tPropertyProxy,null);
    }
-   default  , TProperty> ProxyQueryable many(SQLColumn> navigate,TPropertyProxy tPropertyProxy,Integer groupSize){
-       ClientQueryable clientQueryable = getNavigateInclude().with(navigate.getValue(), groupSize);
-       return new EasyProxyQueryable<>(tPropertyProxy,clientQueryable);
+   default  , TProperty> ProxyQueryable many(SQLQueryable tPropertyProxy,Integer groupSize){
+       Objects.requireNonNull(tPropertyProxy.getNavValue(),"include [navValue] is null");
+       ClientQueryable clientQueryable = getNavigateInclude().with(tPropertyProxy.getNavValue(), groupSize);
+       return new EasyProxyQueryable<>(tPropertyProxy.getQueryable().get1Proxy(), clientQueryable);
    }
 }
diff --git a/sql-platform/sql-api4j/pom.xml b/sql-platform/sql-api4j/pom.xml
index 55fd49a52..913ad93cf 100644
--- a/sql-platform/sql-api4j/pom.xml
+++ b/sql-platform/sql-api4j/pom.xml
@@ -6,7 +6,7 @@
     
         com.easy-query
         easy-query-all
-        1.9.37
+        1.10.0
         ../../pom.xml
     
 
diff --git a/sql-platform/sql-api4kt/pom.xml b/sql-platform/sql-api4kt/pom.xml
index 303a9691e..224f80cf5 100644
--- a/sql-platform/sql-api4kt/pom.xml
+++ b/sql-platform/sql-api4kt/pom.xml
@@ -6,7 +6,7 @@
     
         com.easy-query
         easy-query-all
-        1.9.37
+        1.10.0
         ../../pom.xml
     
 
diff --git a/sql-processor/pom.xml b/sql-processor/pom.xml
index 7cd496650..884741602 100644
--- a/sql-processor/pom.xml
+++ b/sql-processor/pom.xml
@@ -6,7 +6,7 @@
     
         com.easy-query
         easy-query-all
-        1.9.37
+        1.10.0
     
 
     sql-processor
diff --git a/sql-test/pom.xml b/sql-test/pom.xml
index c04a2bc3d..8be8b5d2e 100644
--- a/sql-test/pom.xml
+++ b/sql-test/pom.xml
@@ -5,7 +5,7 @@
     
         easy-query-all
         com.easy-query
-        1.9.37
+        1.10.0
     
     4.0.0
 
@@ -77,7 +77,7 @@
         
             com.easy-query
             sql-api4kt
-            1.9.37
+            1.10.0
             compile
         
         
diff --git a/sql-test/src/main/java/com/easy/query/test/RelationTest.java b/sql-test/src/main/java/com/easy/query/test/RelationTest.java
index 5c42f7498..b19ce5351 100644
--- a/sql-test/src/main/java/com/easy/query/test/RelationTest.java
+++ b/sql-test/src/main/java/com/easy/query/test/RelationTest.java
@@ -18,7 +18,6 @@
 import com.easy.query.test.entity.school.dto.SchoolClassVO;
 import com.easy.query.test.entity.school.dto.SchoolStudentVO;
 import com.easy.query.test.entity.school.dto.SchoolTeacherVO;
-import com.easy.query.test.entity.school.dto.proxy.SchoolClassVOProxy;
 import com.easy.query.test.entity.school.dto.proxy.SchoolStudentVOProxy;
 import com.easy.query.test.entity.school.proxy.SchoolClassProxy;
 import com.easy.query.test.entity.school.proxy.SchoolStudentProxy;
@@ -189,12 +188,7 @@ public void testOneToOne() {
             }
             {
                 List list1 = easyEntityQuery.queryable(SchoolStudent.class)
-                        .include((o, t) -> {
-//                            SQLNavigateColumn schoolStudentProxySchoolClassSQLNavigateColumn = t.schoolClass();
-//                            Class schoolClassClass = schoolStudentProxySchoolClassSQLNavigateColumn.navigateClass();
-//                            EntityQueryable queryable = entityQuery.queryable(schoolClassClass);
-                            return o.asQueryable(t.schoolClass(), 1);
-                        })
+                        .include(t->t.schoolClass())
                         .toList();
                 for (SchoolStudent schoolStudent : list1) {
                     Assert.assertNotNull(schoolStudent.getSchoolClass());
@@ -212,7 +206,7 @@ public void testOneToOne() {
                 SchoolStudentProxy table1 = SchoolStudentProxy.createTable();
                 SchoolClassProxy table2 = SchoolClassProxy.createTable();
                 List list1 = easyProxyQuery.queryable(table1)
-                        .include(i -> i.one(table1.schoolClass(), table2))
+                        .include(i -> i.one(table1.schoolClass()))
                         .toList();
                 for (SchoolStudent schoolStudent : list1) {
                     Assert.assertNotNull(schoolStudent.getSchoolClass());
@@ -252,10 +246,10 @@ public void testOneToOne() {
             {
                 //todo alias
                 List list1 = easyEntityQuery.queryable(SchoolStudent.class)
-                        .include((n, o) -> n.asQueryable(o.schoolClass()))
+                        .include(o->o.schoolClass())
                         .select(o -> new SchoolStudentVOProxy().adapter(r -> {
                             r.selectAll(o);
-                            r.schoolClass().setNavigate(o.schoolClass(), t -> new SchoolClassVOProxy());
+                            r.schoolClass().set(o.schoolClass());
                         }))
                         .toList();
                 for (SchoolStudentVO schoolStudent : list1) {
@@ -277,7 +271,7 @@ public void testOneToOne() {
                         .select(o -> new SchoolStudentVOProxy().adapter(r -> {
                             r.selectAll(o);
 //                            r.schoolClass().setNavigate(o.schoolClass());
-                            r.schoolClass0().set(o.schoolClass0());
+                            r.schoolClass().set(o.schoolClass());
                         }))
                         .toList();
                 for (SchoolStudentVO schoolStudent : list1) {
diff --git a/sql-test/src/main/java/com/easy/query/test/entity/school/dto/proxy/SchoolClassVOProxy.java b/sql-test/src/main/java/com/easy/query/test/entity/school/dto/proxy/SchoolClassVOProxy.java
index 95b6bfd8e..9e427206b 100644
--- a/sql-test/src/main/java/com/easy/query/test/entity/school/dto/proxy/SchoolClassVOProxy.java
+++ b/sql-test/src/main/java/com/easy/query/test/entity/school/dto/proxy/SchoolClassVOProxy.java
@@ -8,12 +8,14 @@
 import com.easy.query.core.proxy.core.EntitySQLContext;
 import com.easy.query.test.entity.school.dto.SchoolClassVO;
 import com.easy.query.core.proxy.columns.SQLStringColumn;
-import com.easy.query.core.proxy.columns.SQLAnyColumn;
 import com.easy.query.core.proxy.columns.SQLNavigateColumn;
+import com.easy.query.core.proxy.columns.SQLQueryable;
+import com.easy.query.core.proxy.columns.SQLAnyColumn;
 
 /**
  * this file automatically generated by easy-query, don't modify it
  * 当前文件是easy-query自动生成的请不要随意修改
+ * 如果出现属性冲突请使用@ProxyProperty进行重命名
  *
  * @author xuejiaming
  */
@@ -21,44 +23,50 @@ public class SchoolClassVOProxy extends AbstractProxyEntity < SchoolClassVOProxy
 
     private static final Class < SchoolClassVO > entityClass = SchoolClassVO .class;
 
-    public static SchoolClassVOProxy createTable () {
+    public static SchoolClassVOProxy createTable (){
         return new SchoolClassVOProxy ();
     }
 
-    public SchoolClassVOProxy () {
+    public SchoolClassVOProxy (){
     }
 
     /**
-     * {@link SchoolClassVO#getId}
+     *{@link SchoolClassVO#getId}
      */
     public SQLStringColumn < SchoolClassVOProxy, java.lang.String> id(){
     return getStringColumn("id", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolClassVO#getName}
+     *{@link SchoolClassVO#getName}
      */
     public SQLStringColumn < SchoolClassVOProxy, java.lang.String> name(){
     return getStringColumn("name", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolClassVO#getSchoolStudents}
+     *{@link SchoolClassVO#getSchoolStudents}
      */
-    public SQLNavigateColumn < SchoolClassVOProxy, com.easy.query.test.entity.school.dto.SchoolStudentVO> schoolStudents(){
-    return getNavigate("schoolStudents", com.easy.query.test.entity.school.dto.SchoolStudentVO.class);
+    public SQLQueryable < com . easy . query . test . entity . school . dto . proxy . SchoolStudentVOProxy, com.easy.query.test.entity.school.dto.SchoolStudentVO> schoolStudents(){
+    return getNavigates(
+        "schoolStudents",
+        new com . easy . query . test . entity . school . dto . proxy . SchoolStudentVOProxy ()
+    );
 }
 
     /**
-     * {@link SchoolClassVO#getSchoolTeachers}
+     *{@link SchoolClassVO#getSchoolTeachers}
      */
-    public SQLNavigateColumn < SchoolClassVOProxy, com.easy.query.test.entity.school.dto.SchoolTeacherVO> schoolTeachers(){
-    return getNavigate("schoolTeachers", com.easy.query.test.entity.school.dto.SchoolTeacherVO.class);
+    public SQLQueryable < com . easy . query . test . entity . school . dto . proxy . SchoolTeacherVOProxy, com.easy.query.test.entity.school.dto.SchoolTeacherVO> schoolTeachers(){
+    return getNavigates(
+        "schoolTeachers",
+        new com . easy . query . test . entity . school . dto . proxy . SchoolTeacherVOProxy ()
+    );
 }
 
 
     @Override
-    public Class < SchoolClassVO > getEntityClass () {
+    public Class < SchoolClassVO > getEntityClass (){
         return entityClass;
     }
 
@@ -72,20 +80,20 @@ public Class < SchoolClassVO > getEntityClass () {
 
     public static class SchoolClassVOProxyFetcher extends AbstractFetcher {
 
-        public SchoolClassVOProxyFetcher (SchoolClassVOProxy proxy, SchoolClassVOProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression) {
+        public SchoolClassVOProxyFetcher (SchoolClassVOProxy proxy, SchoolClassVOProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression){
         super(proxy, prev, sqlSelectAsExpression);
     }
 
 
         /**
-         * {@link SchoolClassVO#getId}
+         *{@link SchoolClassVO#getId}
          */
         public SchoolClassVOProxyFetcher id() {
             return add(getProxy().id());
         }
 
         /**
-         * {@link SchoolClassVO#getName}
+         *{@link SchoolClassVO#getName}
          */
         public SchoolClassVOProxyFetcher name() {
             return add(getProxy().name());
diff --git a/sql-test/src/main/java/com/easy/query/test/entity/school/dto/proxy/SchoolStudentVOProxy.java b/sql-test/src/main/java/com/easy/query/test/entity/school/dto/proxy/SchoolStudentVOProxy.java
index d7cb46d30..a78fc4200 100644
--- a/sql-test/src/main/java/com/easy/query/test/entity/school/dto/proxy/SchoolStudentVOProxy.java
+++ b/sql-test/src/main/java/com/easy/query/test/entity/school/dto/proxy/SchoolStudentVOProxy.java
@@ -2,7 +2,6 @@
 
 import com.easy.query.core.proxy.AbstractProxyEntity;
 import com.easy.query.core.proxy.SQLSelectAsExpression;
-import com.easy.query.core.proxy.columns.SQLNavigateColumn;
 import com.easy.query.core.proxy.columns.SQLStringColumn;
 import com.easy.query.core.proxy.fetcher.AbstractFetcher;
 import com.easy.query.test.entity.school.dto.SchoolStudentVO;
@@ -10,6 +9,7 @@
 /**
  * this file automatically generated by easy-query, don't modify it
  * 当前文件是easy-query自动生成的请不要随意修改
+ * 如果出现属性冲突请使用@ProxyProperty进行重命名
  *
  * @author xuejiaming
  */
@@ -17,54 +17,57 @@ public class SchoolStudentVOProxy extends AbstractProxyEntity < SchoolStudentVOP
 
     private static final Class < SchoolStudentVO > entityClass = SchoolStudentVO .class;
 
-    public static SchoolStudentVOProxy createTable () {
+    public static SchoolStudentVOProxy createTable (){
         return new SchoolStudentVOProxy ();
     }
 
-    public SchoolStudentVOProxy () {
+    public SchoolStudentVOProxy (){
     }
 
     /**
-     * {@link SchoolStudentVO#getId}
+     *{@link SchoolStudentVO#getId}
      */
     public SQLStringColumn < SchoolStudentVOProxy, java.lang.String> id(){
     return getStringColumn("id", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolStudentVO#getClassId}
+     *{@link SchoolStudentVO#getClassId}
      */
     public SQLStringColumn < SchoolStudentVOProxy, java.lang.String> classId(){
     return getStringColumn("classId", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolStudentVO#getName}
+     *{@link SchoolStudentVO#getName}
      */
     public SQLStringColumn < SchoolStudentVOProxy, java.lang.String> name(){
     return getStringColumn("name", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolStudentVO#getSchoolClass}
+     *{@link SchoolStudentVO#getSchoolClass}
      */
-    public SQLNavigateColumn < SchoolStudentVOProxy, com.easy.query.test.entity.school.dto.SchoolClassVO> schoolClass(){
-    return getNavigate("schoolClass", com.easy.query.test.entity.school.dto.SchoolClassVO.class);
-}
-    public SchoolClassVOProxy schoolClass0(){
-    return getNavigate("schoolClass", new SchoolClassVOProxy());
-}
+    public com . easy . query . test . entity . school . dto . proxy . SchoolClassVOProxy schoolClass() {
+        return getNavigate(
+            "schoolClass",
+            new com . easy . query . test . entity . school . dto . proxy . SchoolClassVOProxy ()
+        );
+    }
 
     /**
-     * {@link SchoolStudentVO#getSchoolStudentAddress}
+     *{@link SchoolStudentVO#getSchoolStudentAddress}
      */
-    public SQLNavigateColumn < SchoolStudentVOProxy, com.easy.query.test.entity.school.dto.SchoolStudentAddressVO> schoolStudentAddress(){
-    return getNavigate("schoolStudentAddress", com.easy.query.test.entity.school.dto.SchoolStudentAddressVO.class);
-}
+    public com . easy . query . test . entity . school . dto . proxy . SchoolStudentAddressVOProxy schoolStudentAddress() {
+        return getNavigate(
+            "schoolStudentAddress",
+            new com . easy . query . test . entity . school . dto . proxy . SchoolStudentAddressVOProxy ()
+        );
+    }
 
 
     @Override
-    public Class < SchoolStudentVO > getEntityClass () {
+    public Class < SchoolStudentVO > getEntityClass (){
         return entityClass;
     }
 
@@ -79,27 +82,27 @@ public Class < SchoolStudentVO > getEntityClass () {
 
     public static class SchoolStudentVOProxyFetcher extends AbstractFetcher {
 
-        public SchoolStudentVOProxyFetcher (SchoolStudentVOProxy proxy, SchoolStudentVOProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression) {
+        public SchoolStudentVOProxyFetcher (SchoolStudentVOProxy proxy, SchoolStudentVOProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression){
         super(proxy, prev, sqlSelectAsExpression);
     }
 
 
         /**
-         * {@link SchoolStudentVO#getId}
+         *{@link SchoolStudentVO#getId}
          */
         public SchoolStudentVOProxyFetcher id() {
             return add(getProxy().id());
         }
 
         /**
-         * {@link SchoolStudentVO#getClassId}
+         *{@link SchoolStudentVO#getClassId}
          */
         public SchoolStudentVOProxyFetcher classId() {
             return add(getProxy().classId());
         }
 
         /**
-         * {@link SchoolStudentVO#getName}
+         *{@link SchoolStudentVO#getName}
          */
         public SchoolStudentVOProxyFetcher name() {
             return add(getProxy().name());
diff --git a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/MySchoolClassProxy.java b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/MySchoolClassProxy.java
index 52e88b2ff..da92a12cf 100644
--- a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/MySchoolClassProxy.java
+++ b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/MySchoolClassProxy.java
@@ -1,12 +1,16 @@
 package com.easy.query.test.entity.school.proxy;
 
+import com.easy.query.core.expression.parser.core.available.TableAvailable;
 import com.easy.query.core.proxy.AbstractProxyEntity;
+import com.easy.query.core.proxy.SQLColumn;
 import com.easy.query.core.proxy.SQLSelectAsExpression;
-import com.easy.query.core.proxy.columns.SQLQueryable;
-import com.easy.query.core.proxy.columns.SQLStringColumn;
 import com.easy.query.core.proxy.fetcher.AbstractFetcher;
+import com.easy.query.core.proxy.core.EntitySQLContext;
 import com.easy.query.test.entity.school.MySchoolClass;
-import com.easy.query.test.entity.school.MySchoolStudent;
+import com.easy.query.core.proxy.columns.SQLStringColumn;
+import com.easy.query.core.proxy.columns.SQLNavigateColumn;
+import com.easy.query.core.proxy.columns.SQLQueryable;
+import com.easy.query.core.proxy.columns.SQLAnyColumn;
 
 /**
  * this file automatically generated by easy-query, don't modify it
@@ -19,22 +23,22 @@ public class MySchoolClassProxy extends AbstractProxyEntity < MySchoolClassProxy
 
     private static final Class < MySchoolClass > entityClass = MySchoolClass .class;
 
-    public static MySchoolClassProxy createTable () {
+    public static MySchoolClassProxy createTable (){
         return new MySchoolClassProxy ();
     }
 
-    public MySchoolClassProxy () {
+    public MySchoolClassProxy (){
     }
 
     /**
-     * {@link MySchoolClass#getId}
+     *{@link MySchoolClass#getId}
      */
     public SQLStringColumn < MySchoolClassProxy, java.lang.String> id(){
     return getStringColumn("id", java.lang.String.class);
 }
 
     /**
-     * {@link MySchoolClass#getName}
+     *{@link MySchoolClass#getName}
      */
     public SQLStringColumn < MySchoolClassProxy, java.lang.String> name(){
     return getStringColumn("name", java.lang.String.class);
@@ -42,15 +46,18 @@ public SQLStringColumn < MySchoolClassProxy, java.lang.String> name(){
 
     /**
      * 一对多 一个班级多个学生
-     * {@link MySchoolClass#getSchoolStudents}
+     *{@link MySchoolClass#getSchoolStudents}
      */
-    public SQLQueryable schoolStudents(){
-    return getNavigates("schoolStudents", new MySchoolStudentProxy());
+    public SQLQueryable < com . easy . query . test . entity . school . proxy . MySchoolStudentProxy, com.easy.query.test.entity.school.MySchoolStudent> schoolStudents(){
+    return getNavigates(
+        "schoolStudents",
+        new com . easy . query . test . entity . school . proxy . MySchoolStudentProxy ()
+    );
 }
 
 
     @Override
-    public Class < MySchoolClass > getEntityClass () {
+    public Class < MySchoolClass > getEntityClass (){
         return entityClass;
     }
 
@@ -64,20 +71,20 @@ public Class < MySchoolClass > getEntityClass () {
 
     public static class MySchoolClassProxyFetcher extends AbstractFetcher {
 
-        public MySchoolClassProxyFetcher (MySchoolClassProxy proxy, MySchoolClassProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression) {
+        public MySchoolClassProxyFetcher (MySchoolClassProxy proxy, MySchoolClassProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression){
         super(proxy, prev, sqlSelectAsExpression);
     }
 
 
         /**
-         * {@link MySchoolClass#getId}
+         *{@link MySchoolClass#getId}
          */
         public MySchoolClassProxyFetcher id() {
             return add(getProxy().id());
         }
 
         /**
-         * {@link MySchoolClass#getName}
+         *{@link MySchoolClass#getName}
          */
         public MySchoolClassProxyFetcher name() {
             return add(getProxy().name());
diff --git a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/MySchoolStudentProxy.java b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/MySchoolStudentProxy.java
index b85373a1f..7ae98bb63 100644
--- a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/MySchoolStudentProxy.java
+++ b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/MySchoolStudentProxy.java
@@ -1,10 +1,15 @@
 package com.easy.query.test.entity.school.proxy;
 
+import com.easy.query.core.expression.parser.core.available.TableAvailable;
 import com.easy.query.core.proxy.AbstractProxyEntity;
+import com.easy.query.core.proxy.SQLColumn;
 import com.easy.query.core.proxy.SQLSelectAsExpression;
-import com.easy.query.core.proxy.columns.SQLStringColumn;
 import com.easy.query.core.proxy.fetcher.AbstractFetcher;
+import com.easy.query.core.proxy.core.EntitySQLContext;
 import com.easy.query.test.entity.school.MySchoolStudent;
+import com.easy.query.core.proxy.columns.SQLStringColumn;
+import com.easy.query.core.proxy.columns.SQLNavigateColumn;
+import com.easy.query.core.proxy.columns.SQLAnyColumn;
 
 /**
  * this file automatically generated by easy-query, don't modify it
@@ -13,98 +18,96 @@
  *
  * @author xuejiaming
  */
-public class MySchoolStudentProxy extends AbstractProxyEntity {
+public class MySchoolStudentProxy extends AbstractProxyEntity < MySchoolStudentProxy, MySchoolStudent > {
 
-    private static final Class entityClass = MySchoolStudent.class;
+    private static final Class < MySchoolStudent > entityClass = MySchoolStudent .class;
 
-    public static MySchoolStudentProxy createTable() {
-        return new MySchoolStudentProxy();
+    public static MySchoolStudentProxy createTable (){
+        return new MySchoolStudentProxy ();
     }
 
-    public MySchoolStudentProxy() {
+    public MySchoolStudentProxy (){
     }
 
     /**
-     * {@link MySchoolStudent#getId}
+     *{@link MySchoolStudent#getId}
      */
-    public SQLStringColumn id() {
-        return getStringColumn("id", java.lang.String.class);
-    }
+    public SQLStringColumn < MySchoolStudentProxy, java.lang.String> id(){
+    return getStringColumn("id", java.lang.String.class);
+}
 
     /**
-     * {@link MySchoolStudent#getClassId}
+     *{@link MySchoolStudent#getClassId}
      */
-    public SQLStringColumn classId() {
-        return getStringColumn("classId", java.lang.String.class);
-    }
+    public SQLStringColumn < MySchoolStudentProxy, java.lang.String> classId(){
+    return getStringColumn("classId", java.lang.String.class);
+}
 
     /**
-     * {@link MySchoolStudent#getName}
+     *{@link MySchoolStudent#getName}
      */
-    public SQLStringColumn name() {
-        return getStringColumn("name", java.lang.String.class);
-    }
+    public SQLStringColumn < MySchoolStudentProxy, java.lang.String> name(){
+    return getStringColumn("name", java.lang.String.class);
+}
 
     /**
-     * {@link MySchoolStudent#getSchoolClass}
+     *{@link MySchoolStudent#getSchoolClass}
      */
-    public MySchoolClassProxy schoolClass() {
-        return getNavigate("schoolClass", new MySchoolClassProxy());
+    public com . easy . query . test . entity . school . proxy . MySchoolClassProxy schoolClass() {
+        return getNavigate(
+            "schoolClass",
+            new com . easy . query . test . entity . school . proxy . MySchoolClassProxy ()
+        );
     }
-//
-//    /**
-//     * {@link MySchoolStudent#getSchoolStudentAddress}
-//     */
-//    public SQLNavigateColumn < MySchoolStudentProxy, com.easy.query.test.entity.school.proxy.MySchoolStudentAddressProxy> schoolStudentAddress(){
-//    return getNavigate("schoolStudentAddress", com.easy.query.test.entity.school.proxy.MySchoolStudentAddressProxy.class);
-//}
 
     /**
-     * {@link MySchoolStudent#getSchoolStudentAddress}
+     *{@link MySchoolStudent#getSchoolStudentAddress}
      */
-    public MySchoolStudentAddressProxy schoolStudentAddress() {
-        return getNavigate("schoolStudentAddress",new MySchoolStudentAddressProxy());
+    public com . easy . query . test . entity . school . proxy . MySchoolStudentAddressProxy schoolStudentAddress() {
+        return getNavigate(
+            "schoolStudentAddress",
+            new com . easy . query . test . entity . school . proxy . MySchoolStudentAddressProxy ()
+        );
     }
 
 
     @Override
-    public Class getEntityClass() {
+    public Class < MySchoolStudent > getEntityClass (){
         return entityClass;
     }
 
 
     /**
      * 数据库列的简单获取
-     *
      * @return
      */
     public MySchoolStudentProxyFetcher FETCHER =
-            new MySchoolStudentProxyFetcher(this, null, SQLSelectAsExpression.empty);
+        new MySchoolStudentProxyFetcher (this, null, SQLSelectAsExpression.empty);
 
 
     public static class MySchoolStudentProxyFetcher extends AbstractFetcher {
 
-        public MySchoolStudentProxyFetcher(MySchoolStudentProxy proxy, MySchoolStudentProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression) {
-            super(proxy, prev, sqlSelectAsExpression);
-        }
+        public MySchoolStudentProxyFetcher (MySchoolStudentProxy proxy, MySchoolStudentProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression){
+        super(proxy, prev, sqlSelectAsExpression);
+    }
 
 
         /**
-         * {@link MySchoolStudent#getId}
+         *{@link MySchoolStudent#getId}
          */
         public MySchoolStudentProxyFetcher id() {
             return add(getProxy().id());
         }
 
         /**
-         * {@link MySchoolStudent#getClassId}
+         *{@link MySchoolStudent#getClassId}
          */
         public MySchoolStudentProxyFetcher classId() {
             return add(getProxy().classId());
         }
 
         /**
-         * {@link MySchoolStudent#getName}
+         *{@link MySchoolStudent#getName}
          */
         public MySchoolStudentProxyFetcher name() {
             return add(getProxy().name());
@@ -113,11 +116,11 @@ public MySchoolStudentProxyFetcher name() {
 
         @Override
         protected MySchoolStudentProxyFetcher createFetcher(
-                MySchoolStudentProxy cp,
-                AbstractFetcher prev,
-                SQLSelectAsExpression sqlSelectExpression
+            MySchoolStudentProxy cp,
+            AbstractFetcher prev,
+            SQLSelectAsExpression sqlSelectExpression
         ) {
-            return new MySchoolStudentProxyFetcher(cp, this, sqlSelectExpression);
+            return new MySchoolStudentProxyFetcher (cp, this, sqlSelectExpression);
         }
     }
 
diff --git a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolClassProxy.java b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolClassProxy.java
index 2c86220cc..0c50981e0 100644
--- a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolClassProxy.java
+++ b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolClassProxy.java
@@ -8,12 +8,14 @@
 import com.easy.query.core.proxy.core.EntitySQLContext;
 import com.easy.query.test.entity.school.SchoolClass;
 import com.easy.query.core.proxy.columns.SQLStringColumn;
-import com.easy.query.core.proxy.columns.SQLAnyColumn;
 import com.easy.query.core.proxy.columns.SQLNavigateColumn;
+import com.easy.query.core.proxy.columns.SQLQueryable;
+import com.easy.query.core.proxy.columns.SQLAnyColumn;
 
 /**
  * this file automatically generated by easy-query, don't modify it
  * 当前文件是easy-query自动生成的请不要随意修改
+ * 如果出现属性冲突请使用@ProxyProperty进行重命名
  *
  * @author xuejiaming
  */
@@ -21,22 +23,22 @@ public class SchoolClassProxy extends AbstractProxyEntity < SchoolClassProxy, Sc
 
     private static final Class < SchoolClass > entityClass = SchoolClass .class;
 
-    public static SchoolClassProxy createTable () {
+    public static SchoolClassProxy createTable (){
         return new SchoolClassProxy ();
     }
 
-    public SchoolClassProxy () {
+    public SchoolClassProxy (){
     }
 
     /**
-     * {@link SchoolClass#getId}
+     *{@link SchoolClass#getId}
      */
     public SQLStringColumn < SchoolClassProxy, java.lang.String> id(){
     return getStringColumn("id", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolClass#getName}
+     *{@link SchoolClass#getName}
      */
     public SQLStringColumn < SchoolClassProxy, java.lang.String> name(){
     return getStringColumn("name", java.lang.String.class);
@@ -44,31 +46,29 @@ public SQLStringColumn < SchoolClassProxy, java.lang.String> name(){
 
     /**
      * 一对多 一个班级多个学生
-     * {@link SchoolClass#getSchoolStudents}
-     */
-    public SQLNavigateColumn < SchoolClassProxy, com.easy.query.test.entity.school.SchoolStudent> schoolStudents(){
-    return getNavigate("schoolStudents", com.easy.query.test.entity.school.SchoolStudent.class);
-}
-
-    /**
-     * 一对多 一个班级多个学生
-     * {@link SchoolClass#getSchoolStudents1}
+     *{@link SchoolClass#getSchoolStudents}
      */
-    public SQLNavigateColumn < SchoolClassProxy, com.easy.query.test.entity.school.SchoolStudent> schoolStudents1(){
-    return getNavigate("schoolStudents1", com.easy.query.test.entity.school.SchoolStudent.class);
+    public SQLQueryable < com . easy . query . test . entity . school . proxy . SchoolStudentProxy, com.easy.query.test.entity.school.SchoolStudent> schoolStudents(){
+    return getNavigates(
+        "schoolStudents",
+        new com . easy . query . test . entity . school . proxy . SchoolStudentProxy ()
+    );
 }
 
     /**
      * 中间表多对多配置,其中mappingClass表示中间表,selfMappingProperty表示中间表的哪个字段和当前表对应,
-     * {@link SchoolClass#getSchoolTeachers}
+     *{@link SchoolClass#getSchoolTeachers}
      */
-    public SQLNavigateColumn < SchoolClassProxy, com.easy.query.test.entity.school.SchoolTeacher> schoolTeachers(){
-    return getNavigate("schoolTeachers", com.easy.query.test.entity.school.SchoolTeacher.class);
+    public SQLQueryable < com . easy . query . test . entity . school . proxy . SchoolTeacherProxy, com.easy.query.test.entity.school.SchoolTeacher> schoolTeachers(){
+    return getNavigates(
+        "schoolTeachers",
+        new com . easy . query . test . entity . school . proxy . SchoolTeacherProxy ()
+    );
 }
 
 
     @Override
-    public Class < SchoolClass > getEntityClass () {
+    public Class < SchoolClass > getEntityClass (){
         return entityClass;
     }
 
@@ -82,20 +82,20 @@ public Class < SchoolClass > getEntityClass () {
 
     public static class SchoolClassProxyFetcher extends AbstractFetcher {
 
-        public SchoolClassProxyFetcher (SchoolClassProxy proxy, SchoolClassProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression) {
+        public SchoolClassProxyFetcher (SchoolClassProxy proxy, SchoolClassProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression){
         super(proxy, prev, sqlSelectAsExpression);
     }
 
 
         /**
-         * {@link SchoolClass#getId}
+         *{@link SchoolClass#getId}
          */
         public SchoolClassProxyFetcher id() {
             return add(getProxy().id());
         }
 
         /**
-         * {@link SchoolClass#getName}
+         *{@link SchoolClass#getName}
          */
         public SchoolClassProxyFetcher name() {
             return add(getProxy().name());
diff --git a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolClassTeacherProxy.java b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolClassTeacherProxy.java
index de8df3d57..e3d644fce 100644
--- a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolClassTeacherProxy.java
+++ b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolClassTeacherProxy.java
@@ -1,14 +1,18 @@
 package com.easy.query.test.entity.school.proxy;
 
+import com.easy.query.core.expression.parser.core.available.TableAvailable;
 import com.easy.query.core.proxy.AbstractProxyEntity;
 import com.easy.query.core.proxy.SQLColumn;
 import com.easy.query.core.proxy.SQLSelectAsExpression;
 import com.easy.query.core.proxy.fetcher.AbstractFetcher;
+import com.easy.query.core.proxy.core.EntitySQLContext;
 import com.easy.query.test.entity.school.SchoolClassTeacher;
+import com.easy.query.core.proxy.columns.SQLStringColumn;
 
 /**
  * this file automatically generated by easy-query, don't modify it
  * 当前文件是easy-query自动生成的请不要随意修改
+ * 如果出现属性冲突请使用@ProxyProperty进行重命名
  *
  * @author xuejiaming
  */
@@ -16,30 +20,30 @@ public class SchoolClassTeacherProxy extends AbstractProxyEntity < SchoolClassTe
 
     private static final Class < SchoolClassTeacher > entityClass = SchoolClassTeacher .class;
 
-    public static SchoolClassTeacherProxy createTable () {
+    public static SchoolClassTeacherProxy createTable (){
         return new SchoolClassTeacherProxy ();
     }
 
-    public SchoolClassTeacherProxy () {
+    public SchoolClassTeacherProxy (){
     }
 
     /**
-     * {@link SchoolClassTeacher#getClassId}
+     *{@link SchoolClassTeacher#getClassId}
      */
-    public SQLColumn < SchoolClassTeacherProxy, java.lang.String> classId(){
-    return get("classId");
+    public SQLStringColumn < SchoolClassTeacherProxy, java.lang.String> classId(){
+    return getStringColumn("classId", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolClassTeacher#getTeacherId}
+     *{@link SchoolClassTeacher#getTeacherId}
      */
-    public SQLColumn < SchoolClassTeacherProxy, java.lang.String> teacherId(){
-    return get("teacherId");
+    public SQLStringColumn < SchoolClassTeacherProxy, java.lang.String> teacherId(){
+    return getStringColumn("teacherId", java.lang.String.class);
 }
 
 
     @Override
-    public Class < SchoolClassTeacher > getEntityClass () {
+    public Class < SchoolClassTeacher > getEntityClass (){
         return entityClass;
     }
 
@@ -54,20 +58,20 @@ public Class < SchoolClassTeacher > getEntityClass () {
 
     public static class SchoolClassTeacherProxyFetcher extends AbstractFetcher {
 
-        public SchoolClassTeacherProxyFetcher (SchoolClassTeacherProxy proxy, SchoolClassTeacherProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression) {
+        public SchoolClassTeacherProxyFetcher (SchoolClassTeacherProxy proxy, SchoolClassTeacherProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression){
         super(proxy, prev, sqlSelectAsExpression);
     }
 
 
         /**
-         * {@link SchoolClassTeacher#getClassId}
+         *{@link SchoolClassTeacher#getClassId}
          */
         public SchoolClassTeacherProxyFetcher classId() {
             return add(getProxy().classId());
         }
 
         /**
-         * {@link SchoolClassTeacher#getTeacherId}
+         *{@link SchoolClassTeacher#getTeacherId}
          */
         public SchoolClassTeacherProxyFetcher teacherId() {
             return add(getProxy().teacherId());
diff --git a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolStudentAddressProxy.java b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolStudentAddressProxy.java
index 6055639d4..e472f33ba 100644
--- a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolStudentAddressProxy.java
+++ b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolStudentAddressProxy.java
@@ -1,15 +1,20 @@
 package com.easy.query.test.entity.school.proxy;
 
+import com.easy.query.core.expression.parser.core.available.TableAvailable;
 import com.easy.query.core.proxy.AbstractProxyEntity;
 import com.easy.query.core.proxy.SQLColumn;
 import com.easy.query.core.proxy.SQLSelectAsExpression;
 import com.easy.query.core.proxy.fetcher.AbstractFetcher;
+import com.easy.query.core.proxy.core.EntitySQLContext;
 import com.easy.query.test.entity.school.SchoolStudentAddress;
+import com.easy.query.core.proxy.columns.SQLStringColumn;
 import com.easy.query.core.proxy.columns.SQLNavigateColumn;
+import com.easy.query.core.proxy.columns.SQLAnyColumn;
 
 /**
  * this file automatically generated by easy-query, don't modify it
  * 当前文件是easy-query自动生成的请不要随意修改
+ * 如果出现属性冲突请使用@ProxyProperty进行重命名
  *
  * @author xuejiaming
  */
@@ -17,44 +22,47 @@ public class SchoolStudentAddressProxy extends AbstractProxyEntity < SchoolStude
 
     private static final Class < SchoolStudentAddress > entityClass = SchoolStudentAddress .class;
 
-    public static SchoolStudentAddressProxy createTable () {
+    public static SchoolStudentAddressProxy createTable (){
         return new SchoolStudentAddressProxy ();
     }
 
-    public SchoolStudentAddressProxy () {
+    public SchoolStudentAddressProxy (){
     }
 
     /**
-     * {@link SchoolStudentAddress#getId}
+     *{@link SchoolStudentAddress#getId}
      */
-    public SQLColumn < SchoolStudentAddressProxy, java.lang.String> id(){
-    return get("id");
+    public SQLStringColumn < SchoolStudentAddressProxy, java.lang.String> id(){
+    return getStringColumn("id", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolStudentAddress#getStudentId}
+     *{@link SchoolStudentAddress#getStudentId}
      */
-    public SQLColumn < SchoolStudentAddressProxy, java.lang.String> studentId(){
-    return get("studentId");
+    public SQLStringColumn < SchoolStudentAddressProxy, java.lang.String> studentId(){
+    return getStringColumn("studentId", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolStudentAddress#getAddress}
+     *{@link SchoolStudentAddress#getAddress}
      */
-    public SQLColumn < SchoolStudentAddressProxy, java.lang.String> address(){
-    return get("address");
+    public SQLStringColumn < SchoolStudentAddressProxy, java.lang.String> address(){
+    return getStringColumn("address", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolStudentAddress#getSchoolStudent}
+     *{@link SchoolStudentAddress#getSchoolStudent}
      */
-    public SQLNavigateColumn < SchoolStudentAddressProxy, com.easy.query.test.entity.school.SchoolStudent> schoolStudent(){
-    return getNavigate("schoolStudent", com.easy.query.test.entity.school.SchoolStudent.class);
-}
+    public com . easy . query . test . entity . school . proxy . SchoolStudentProxy schoolStudent() {
+        return getNavigate(
+            "schoolStudent",
+            new com . easy . query . test . entity . school . proxy . SchoolStudentProxy ()
+        );
+    }
 
 
     @Override
-    public Class < SchoolStudentAddress > getEntityClass () {
+    public Class < SchoolStudentAddress > getEntityClass (){
         return entityClass;
     }
 
@@ -69,27 +77,27 @@ public Class < SchoolStudentAddress > getEntityClass () {
 
     public static class SchoolStudentAddressProxyFetcher extends AbstractFetcher {
 
-        public SchoolStudentAddressProxyFetcher (SchoolStudentAddressProxy proxy, SchoolStudentAddressProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression) {
+        public SchoolStudentAddressProxyFetcher (SchoolStudentAddressProxy proxy, SchoolStudentAddressProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression){
         super(proxy, prev, sqlSelectAsExpression);
     }
 
 
         /**
-         * {@link SchoolStudentAddress#getId}
+         *{@link SchoolStudentAddress#getId}
          */
         public SchoolStudentAddressProxyFetcher id() {
             return add(getProxy().id());
         }
 
         /**
-         * {@link SchoolStudentAddress#getStudentId}
+         *{@link SchoolStudentAddress#getStudentId}
          */
         public SchoolStudentAddressProxyFetcher studentId() {
             return add(getProxy().studentId());
         }
 
         /**
-         * {@link SchoolStudentAddress#getAddress}
+         *{@link SchoolStudentAddress#getAddress}
          */
         public SchoolStudentAddressProxyFetcher address() {
             return add(getProxy().address());
diff --git a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolStudentProxy.java b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolStudentProxy.java
index 1e30ef3ff..7086774bd 100644
--- a/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolStudentProxy.java
+++ b/sql-test/src/main/java/com/easy/query/test/entity/school/proxy/SchoolStudentProxy.java
@@ -1,15 +1,20 @@
 package com.easy.query.test.entity.school.proxy;
 
+import com.easy.query.core.expression.parser.core.available.TableAvailable;
 import com.easy.query.core.proxy.AbstractProxyEntity;
+import com.easy.query.core.proxy.SQLColumn;
 import com.easy.query.core.proxy.SQLSelectAsExpression;
-import com.easy.query.core.proxy.columns.SQLNavigateColumn;
-import com.easy.query.core.proxy.columns.SQLStringColumn;
 import com.easy.query.core.proxy.fetcher.AbstractFetcher;
+import com.easy.query.core.proxy.core.EntitySQLContext;
 import com.easy.query.test.entity.school.SchoolStudent;
+import com.easy.query.core.proxy.columns.SQLStringColumn;
+import com.easy.query.core.proxy.columns.SQLNavigateColumn;
+import com.easy.query.core.proxy.columns.SQLAnyColumn;
 
 /**
  * this file automatically generated by easy-query, don't modify it
  * 当前文件是easy-query自动生成的请不要随意修改
+ * 如果出现属性冲突请使用@ProxyProperty进行重命名
  *
  * @author xuejiaming
  */
@@ -17,54 +22,57 @@ public class SchoolStudentProxy extends AbstractProxyEntity < SchoolStudentProxy
 
     private static final Class < SchoolStudent > entityClass = SchoolStudent .class;
 
-    public static SchoolStudentProxy createTable () {
+    public static SchoolStudentProxy createTable (){
         return new SchoolStudentProxy ();
     }
 
-    public SchoolStudentProxy () {
+    public SchoolStudentProxy (){
     }
 
     /**
-     * {@link SchoolStudent#getId}
+     *{@link SchoolStudent#getId}
      */
     public SQLStringColumn < SchoolStudentProxy, java.lang.String> id(){
     return getStringColumn("id", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolStudent#getClassId}
+     *{@link SchoolStudent#getClassId}
      */
     public SQLStringColumn < SchoolStudentProxy, java.lang.String> classId(){
     return getStringColumn("classId", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolStudent#getName}
+     *{@link SchoolStudent#getName}
      */
     public SQLStringColumn < SchoolStudentProxy, java.lang.String> name(){
     return getStringColumn("name", java.lang.String.class);
 }
 
     /**
-     * {@link SchoolStudent#getSchoolClass}
+     *{@link SchoolStudent#getSchoolClass}
      */
-    public SQLNavigateColumn < SchoolStudentProxy, com.easy.query.test.entity.school.SchoolClass> schoolClass(){
-    return getNavigate("schoolClass", com.easy.query.test.entity.school.SchoolClass.class);
-}
-    public SchoolClassProxy schoolClass0(){
-    return getNavigate("schoolClass", new SchoolClassProxy());
-}
+    public com . easy . query . test . entity . school . proxy . SchoolClassProxy schoolClass() {
+        return getNavigate(
+            "schoolClass",
+            new com . easy . query . test . entity . school . proxy . SchoolClassProxy ()
+        );
+    }
 
     /**
-     * {@link SchoolStudent#getSchoolStudentAddress}
+     *{@link SchoolStudent#getSchoolStudentAddress}
      */
-    public SQLNavigateColumn < SchoolStudentProxy, com.easy.query.test.entity.school.SchoolStudentAddress> schoolStudentAddress(){
-    return getNavigate("schoolStudentAddress", com.easy.query.test.entity.school.SchoolStudentAddress.class);
-}
+    public com . easy . query . test . entity . school . proxy . SchoolStudentAddressProxy schoolStudentAddress() {
+        return getNavigate(
+            "schoolStudentAddress",
+            new com . easy . query . test . entity . school . proxy . SchoolStudentAddressProxy ()
+        );
+    }
 
 
     @Override
-    public Class < SchoolStudent > getEntityClass () {
+    public Class < SchoolStudent > getEntityClass (){
         return entityClass;
     }
 
@@ -78,27 +86,27 @@ public Class < SchoolStudent > getEntityClass () {
 
     public static class SchoolStudentProxyFetcher extends AbstractFetcher {
 
-        public SchoolStudentProxyFetcher (SchoolStudentProxy proxy, SchoolStudentProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression) {
+        public SchoolStudentProxyFetcher (SchoolStudentProxy proxy, SchoolStudentProxyFetcher prev, SQLSelectAsExpression sqlSelectAsExpression){
         super(proxy, prev, sqlSelectAsExpression);
     }
 
 
         /**
-         * {@link SchoolStudent#getId}
+         *{@link SchoolStudent#getId}
          */
         public SchoolStudentProxyFetcher id() {
             return add(getProxy().id());
         }
 
         /**
-         * {@link SchoolStudent#getClassId}
+         *{@link SchoolStudent#getClassId}
          */
         public SchoolStudentProxyFetcher classId() {
             return add(getProxy().classId());
         }
 
         /**
-         * {@link SchoolStudent#getName}
+         *{@link SchoolStudent#getName}
          */
         public SchoolStudentProxyFetcher name() {
             return add(getProxy().name());