diff --git a/pom.xml b/pom.xml
index 22a3e1962..3a0741727 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,7 @@
com.easy-query
easy-query-all
pom
- 1.7.1
+ 1.7.2
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 04f8a77c0..3239e9106 100644
--- a/samples/console-demo/pom.xml
+++ b/samples/console-demo/pom.xml
@@ -6,7 +6,7 @@
com.easy-query
samples
- 1.7.1
+ 1.7.2
console-demo
@@ -22,21 +22,21 @@
com.easy-query
sql-mysql
- 1.7.1
+ 1.7.2
compile
com.easy-query
sql-processor
- 1.7.1
+ 1.7.2
compile
com.easy-query
sql-api-proxy
- 1.7.1
+ 1.7.2
compile
diff --git a/samples/easy-query-solon-web/pom.xml b/samples/easy-query-solon-web/pom.xml
index f7484daee..682ad95cc 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.7.1
+ 1.7.2
com.easy.query.solon
@@ -22,13 +22,13 @@
com.easy-query
sql-solon-plugin
- 1.7.1
+ 1.7.2
compile
com.easy-query
sql-processor
- 1.7.1
+ 1.7.2
compile
diff --git a/samples/pom.xml b/samples/pom.xml
index 2082e9b18..d39f89e2b 100644
--- a/samples/pom.xml
+++ b/samples/pom.xml
@@ -5,7 +5,7 @@
easy-query-all
com.easy-query
- 1.7.1
+ 1.7.2
4.0.0
@@ -43,7 +43,7 @@
com.easy-query
sql-springboot-starter
- 1.7.1
+ 1.7.2
compile
diff --git a/samples/solon-sharding-demo/pom.xml b/samples/solon-sharding-demo/pom.xml
index f7d08e588..91695ae70 100644
--- a/samples/solon-sharding-demo/pom.xml
+++ b/samples/solon-sharding-demo/pom.xml
@@ -6,7 +6,7 @@
com.easy-query
samples
- 1.7.1
+ 1.7.2
com.easy.query
@@ -22,7 +22,7 @@
com.easy-query
sql-solon-plugin
- 1.7.1
+ 1.7.2
compile
diff --git a/samples/spring-sharding-demo/pom.xml b/samples/spring-sharding-demo/pom.xml
index eb889fc5c..83c76d479 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.7.1
+ 1.7.2
compile
com.easy-query
sql-springboot-starter
- 1.7.1
+ 1.7.2
compile
diff --git a/samples/springbootdemo/pom.xml b/samples/springbootdemo/pom.xml
index e3112276f..f986b123e 100644
--- a/samples/springbootdemo/pom.xml
+++ b/samples/springbootdemo/pom.xml
@@ -74,19 +74,19 @@
com.easy-query
sql-core
- 1.7.1
+ 1.7.2
compile
com.easy-query
sql-api4j
- 1.7.1
+ 1.7.2
compile
com.easy-query
sql-springboot-starter
- 1.7.1
+ 1.7.2
compile
diff --git a/sql-core/pom.xml b/sql-core/pom.xml
index 99f0097ed..0807010c3 100644
--- a/sql-core/pom.xml
+++ b/sql-core/pom.xml
@@ -5,7 +5,7 @@
easy-query-all
com.easy-query
- 1.7.1
+ 1.7.2
4.0.0
diff --git a/sql-core/src/main/java/com/easy/query/core/metadata/EntityMetadata.java b/sql-core/src/main/java/com/easy/query/core/metadata/EntityMetadata.java
index cb64a01bd..75cec857a 100644
--- a/sql-core/src/main/java/com/easy/query/core/metadata/EntityMetadata.java
+++ b/sql-core/src/main/java/com/easy/query/core/metadata/EntityMetadata.java
@@ -189,7 +189,7 @@ public void init(ServiceProvider serviceProvider) {
if (navigate != null) {
createNavigateMetadata(tableEntity, navigate, field, fastBean, fastBeanProperty, property);
continue;
- } else if (tableEntity) {
+ } else {
ValueObject valueObject = field.getAnnotation(ValueObject.class);
if (valueObject != null) {
hasValueObject = true;
diff --git a/sql-db-support/pom.xml b/sql-db-support/pom.xml
index 15a0b8570..b5c8e2e23 100644
--- a/sql-db-support/pom.xml
+++ b/sql-db-support/pom.xml
@@ -6,7 +6,7 @@
com.easy-query
easy-query-all
- 1.7.1
+ 1.7.2
sql-db-support
diff --git a/sql-db-support/sql-dameng/pom.xml b/sql-db-support/sql-dameng/pom.xml
index 41511079b..fdbec55b2 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-db-support/sql-h2/pom.xml b/sql-db-support/sql-h2/pom.xml
index 8604c3c73..66c277aff 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-db-support/sql-kingbase-es/pom.xml b/sql-db-support/sql-kingbase-es/pom.xml
index 60df142d4..4710768ea 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.7.1
+ 1.7.2
../../pom.xml
sql-kingbase-es
diff --git a/sql-db-support/sql-mssql/pom.xml b/sql-db-support/sql-mssql/pom.xml
index df07ec9d4..2b68bb8b9 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-db-support/sql-mysql/pom.xml b/sql-db-support/sql-mysql/pom.xml
index 87e75eaba..5fdc04aa1 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-db-support/sql-oracle/pom.xml b/sql-db-support/sql-oracle/pom.xml
index 49bfc17c6..85c18f3b9 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-db-support/sql-pgsql/pom.xml b/sql-db-support/sql-pgsql/pom.xml
index 65c411973..0fa358b6d 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-db-support/sql-sqlite/pom.xml b/sql-db-support/sql-sqlite/pom.xml
index ca62cb1fe..cc915bbad 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-extension/pom.xml b/sql-extension/pom.xml
index b51f640aa..08807e2a3 100644
--- a/sql-extension/pom.xml
+++ b/sql-extension/pom.xml
@@ -6,7 +6,7 @@
com.easy-query
easy-query-all
- 1.7.1
+ 1.7.2
sql-extension
diff --git a/sql-extension/sql-kt-springboot-starter/pom.xml b/sql-extension/sql-kt-springboot-starter/pom.xml
index 3c660aab4..e4db46780 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-extension/sql-solon-plugin/pom.xml b/sql-extension/sql-solon-plugin/pom.xml
index 0c79ae6ce..4c8c90872 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-extension/sql-springboot-starter/pom.xml b/sql-extension/sql-springboot-starter/pom.xml
index 32af48e62..ea6a4ea12 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-platform/pom.xml b/sql-platform/pom.xml
index 3c1fc8ab5..37d0e5d29 100644
--- a/sql-platform/pom.xml
+++ b/sql-platform/pom.xml
@@ -6,7 +6,7 @@
com.easy-query
easy-query-all
- 1.7.1
+ 1.7.2
sql-platform
diff --git a/sql-platform/sql-api-proxy/pom.xml b/sql-platform/sql-api-proxy/pom.xml
index b3b190ddb..1966a376d 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.7.1
+ 1.7.2
sql-api-proxy
diff --git a/sql-platform/sql-api4j/pom.xml b/sql-platform/sql-api4j/pom.xml
index 82544aa80..a7a540006 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-platform/sql-api4kt/pom.xml b/sql-platform/sql-api4kt/pom.xml
index 4b991a0f2..8044b7d31 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.7.1
+ 1.7.2
../../pom.xml
diff --git a/sql-processor/pom.xml b/sql-processor/pom.xml
index 16c549dfe..6aa4aaa58 100644
--- a/sql-processor/pom.xml
+++ b/sql-processor/pom.xml
@@ -6,7 +6,7 @@
com.easy-query
easy-query-all
- 1.7.1
+ 1.7.2
sql-processor
diff --git a/sql-test/pom.xml b/sql-test/pom.xml
index 0071a16a6..64e933814 100644
--- a/sql-test/pom.xml
+++ b/sql-test/pom.xml
@@ -5,7 +5,7 @@
easy-query-all
com.easy-query
- 1.7.1
+ 1.7.2
4.0.0
@@ -71,7 +71,7 @@
com.easy-query
sql-api4kt
- 1.7.1
+ 1.7.2
compile
diff --git a/sql-test/src/main/java/com/easy/query/test/QueryTest8.java b/sql-test/src/main/java/com/easy/query/test/QueryTest8.java
index bfcbccc7c..2a598ef53 100644
--- a/sql-test/src/main/java/com/easy/query/test/QueryTest8.java
+++ b/sql-test/src/main/java/com/easy/query/test/QueryTest8.java
@@ -5,11 +5,15 @@
import com.easy.query.api4j.select.Queryable;
import com.easy.query.api4j.select.Queryable2;
import com.easy.query.core.enums.AggregatePredicateCompare;
+import com.easy.query.core.exception.EasyQuerySQLCommandException;
+import com.easy.query.core.exception.EasyQuerySQLStatementException;
import com.easy.query.test.dto.BlogEntityTest;
import com.easy.query.test.dto.TopicRequest;
import com.easy.query.test.dto.proxy.BlogEntityTestProxy;
import com.easy.query.test.entity.BlogEntity;
import com.easy.query.test.entity.Topic;
+import com.easy.query.test.entity.company.ValueCompany;
+import com.easy.query.test.entity.company.ValueCompanyDTO;
import com.easy.query.test.entity.proxy.BlogEntityProxy;
import com.easy.query.test.entity.proxy.TopicProxy;
import org.junit.Assert;
@@ -18,6 +22,7 @@
import java.time.LocalDateTime;
import java.util.Collections;
import java.util.List;
+import java.util.function.Supplier;
/**
* create time 2023/10/31 07:31
@@ -524,4 +529,51 @@ public void test2(){
o.columnAs(o.t().url(), o.tr().url()).columnAs(o.t1().title(),o.tr().content());
}).toList();
}
+
+ @Test
+ public void test3(){
+ ValueCompanyDTO companyDTO = easyQuery.queryable(ValueCompany.class)
+ .select(ValueCompanyDTO.class,o->o.columnAll())
+ .firstOrNull();
+ Assert.assertNotNull(companyDTO.getName());
+ Assert.assertNotNull(companyDTO.getLicense());
+ Assert.assertNotNull(companyDTO.getLicense().getLicenseNo());
+ Assert.assertNotNull(companyDTO.getLicense().getExtra());
+ Assert.assertNotNull(companyDTO.getLicense().getLicenseDeadline());
+ Assert.assertNotNull(companyDTO.getLicense().getExtra().getLicenseContent());
+ Assert.assertNotNull(companyDTO.getLicense().getExtra().getLicenseImage());
+ Assert.assertNotNull(companyDTO.getAddress());
+ Assert.assertNotNull(companyDTO.getAddress().getProvince());
+ Assert.assertNotNull(companyDTO.getAddress().getArea());
+
+ ValueCompanyDTO companyDTO1 = easyQuery.queryable(ValueCompany.class)
+ .select(ValueCompanyDTO.class, o -> o.columnAs(x -> x.getAddress().getProvince(), x -> x.getLicense().getExtra().getLicenseContent()))
+ .firstOrNull();
+ Assert.assertNotNull(companyDTO1);
+ Assert.assertEquals(companyDTO.getAddress().getProvince(),companyDTO1.getLicense().getExtra().getLicenseContent());
+ }
+ @Test
+ public void test4(){
+
+ Supplier f = () -> {
+ try {
+ ValueCompanyDTO companyDTO = easyQuery.queryable(ValueCompany.class)
+ .asTable("COMPANY_A")
+ .select(ValueCompanyDTO.class,o->o.columnAll())
+// .select(BlogEntity.class, o -> o.column(BlogEntity::getId).columnCountAs(BlogEntity::getId, BlogEntity::getStar))
+ .firstOrNull();
+ }catch (Exception ex){
+ return ex;
+ }
+ return null;
+ };
+ Exception exception = f.get();
+ Assert.assertNotNull(exception);
+ Assert.assertTrue(exception instanceof EasyQuerySQLCommandException);
+ EasyQuerySQLCommandException easyQuerySQLCommandException = (EasyQuerySQLCommandException) exception;
+ Assert.assertTrue(easyQuerySQLCommandException.getCause() instanceof EasyQuerySQLStatementException);
+ EasyQuerySQLStatementException easyQuerySQLStatementException = (EasyQuerySQLStatementException) easyQuerySQLCommandException.getCause();
+ Assert.assertEquals("SELECT t.`name`,t.`province`,t.`area`,t.`license_no`,t.`license_deadline`,t.`license_image`,t.`license_content` FROM `COMPANY_A` t LIMIT 1",easyQuerySQLStatementException.getSQL());
+
+ }
}
diff --git a/sql-test/src/main/java/com/easy/query/test/entity/company/ValueCompanyAddressDTO.java b/sql-test/src/main/java/com/easy/query/test/entity/company/ValueCompanyAddressDTO.java
new file mode 100644
index 000000000..1f5c33ad1
--- /dev/null
+++ b/sql-test/src/main/java/com/easy/query/test/entity/company/ValueCompanyAddressDTO.java
@@ -0,0 +1,25 @@
+package com.easy.query.test.entity.company;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * create time 2023/11/7 14:06
+ * 文件说明
+ *
+ * @author xuejiaming
+ */
+@Data
+@EqualsAndHashCode
+@ToString
+public class ValueCompanyAddressDTO {
+ /**
+ * 企业所属省份
+ */
+ private String province;
+ /**
+ * 企业所属区域
+ */
+ private String area;
+}
diff --git a/sql-test/src/main/java/com/easy/query/test/entity/company/ValueCompanyDTO.java b/sql-test/src/main/java/com/easy/query/test/entity/company/ValueCompanyDTO.java
new file mode 100644
index 000000000..085c392b6
--- /dev/null
+++ b/sql-test/src/main/java/com/easy/query/test/entity/company/ValueCompanyDTO.java
@@ -0,0 +1,32 @@
+package com.easy.query.test.entity.company;
+
+import com.easy.query.core.annotation.EntityProxy;
+import com.easy.query.core.annotation.ValueObject;
+import lombok.Data;
+import lombok.ToString;
+
+/**
+ * create time 2023/11/7 14:06
+ * 文件说明
+ *
+ * @author xuejiaming
+ */
+@Data
+@ToString
+@EntityProxy
+public class ValueCompanyDTO {
+ /**
+ * 企业名称
+ */
+ private String name;
+ /**
+ * 企业地址信息
+ */
+ @ValueObject
+ private ValueCompanyAddressDTO address;
+ /**
+ * 企业营业执照信息
+ */
+ @ValueObject
+ private ValueCompanyLicense license;
+}