> entityClassList = new ArrayList<>();
- for (String basePackage : basePackages) {
- entityClassList.addAll(ClassHelper.scanClasses(basePackage));
- }
- return new DynamicMapperHandler(sqlSessionFactory, entityClassList);
+ return new DynamicMapperHandler(sqlSessionFactory, streamScannerConfigurer.getEntityClasses());
}
}
diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/engine/configuration/StreamScannerConfigurer.java b/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/engine/configuration/StreamScannerConfigurer.java
index 69bda878b187bf98022f8094d26a816dcbabda5b..313fd78966e6bd8cc123fe13fd23d7f309e5cd3c 100644
--- a/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/engine/configuration/StreamScannerConfigurer.java
+++ b/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/engine/configuration/StreamScannerConfigurer.java
@@ -16,23 +16,89 @@
*/
package org.dromara.streamquery.stream.plugin.mybatisplus.engine.configuration;
+
+import org.springframework.beans.BeansException;
+import org.springframework.beans.factory.config.BeanFactoryPostProcessor;
+import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
+import org.springframework.util.CollectionUtils;
+
+import java.lang.annotation.Annotation;
+import java.util.Collection;
+import java.util.HashSet;
import java.util.Set;
/**
+ *
* stream scanner configurer
+ * from {@link StreamScannerRegistrar}
+ *
*
- * @author KamTo Hung from {@link StreamScannerRegistrar}
+ * @author KamTo Hung
*/
-public class StreamScannerConfigurer {
+public class StreamScannerConfigurer implements BeanFactoryPostProcessor {
- /** base package */
+ /**
+ * base package
+ */
private Set basePackages;
- public Set getBasePackages() {
- return basePackages;
- }
+ /**
+ * specify classes
+ */
+ private Set> classes;
+
+ /**
+ * annotation
+ */
+ private Class extends Annotation> annotation;
+
+ /**
+ * scan interface
+ */
+ private Class> interfaceClass;
+
+
+ /**
+ * entity class list
+ */
+ private final Set> entityClassList = new HashSet<>();
public void setBasePackages(Set basePackages) {
this.basePackages = basePackages;
}
+
+ public void setClasses(Set> classes) {
+ this.classes = classes;
+ }
+
+ public void setAnnotation(Class extends Annotation> annotation) {
+ this.annotation = annotation;
+ }
+
+ public void setInterfaceClass(Class> interfaceClass) {
+ this.interfaceClass = interfaceClass;
+ }
+
+ private void registerEntityClasses(Collection> entityClasses) {
+ if (!CollectionUtils.isEmpty(entityClasses)) {
+ this.entityClassList.addAll(entityClasses);
+ }
+ }
+
+ public Collection> getEntityClasses() {
+ return entityClassList;
+ }
+
+ @Override
+ public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
+ // 指定类
+ registerEntityClasses(this.classes);
+ StreamClassPathScanner scanner = new StreamClassPathScanner(false);
+ scanner.setAnnotation(this.annotation);
+ scanner.setInterfaceClass(this.interfaceClass);
+ scanner.registerFilters();
+ Set> classSet = scanner.scan(this.basePackages);
+ registerEntityClasses(classSet);
+ }
+
}
diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/engine/configuration/StreamScannerRegistrar.java b/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/engine/configuration/StreamScannerRegistrar.java
index 43719a306835b990854013f4f3f8da2dc195304e..ba8f9c24f339e343228430d795f95c0c43b521ca 100644
--- a/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/engine/configuration/StreamScannerRegistrar.java
+++ b/stream-plugin/stream-plugin-mybatis-plus/src/main/java/org/dromara/streamquery/stream/plugin/mybatisplus/engine/configuration/StreamScannerRegistrar.java
@@ -25,42 +25,64 @@ import org.springframework.core.type.AnnotationMetadata;
import org.springframework.util.ClassUtils;
import org.springframework.util.StringUtils;
+import java.lang.annotation.Annotation;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Objects;
import java.util.Set;
import java.util.stream.Collectors;
-/** @author KamTo Hung */
+/**
+ * Bean definition registrar for {@link StreamScannerConfigurer}.
+ *
+ * @author KamTo Hung
+ */
public class StreamScannerRegistrar implements ImportBeanDefinitionRegistrar {
@Override
public void registerBeanDefinitions(
- AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {
+ AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {
AnnotationAttributes annotationAttributes =
- AnnotationAttributes.fromMap(
- importingClassMetadata.getAnnotationAttributes(
- EnableMybatisPlusPlugin.class.getName()));
+ AnnotationAttributes.fromMap(
+ importingClassMetadata.getAnnotationAttributes(
+ EnableMybatisPlusPlugin.class.getName()));
if (Objects.isNull(annotationAttributes)) {
return;
}
BeanDefinitionBuilder builder =
- BeanDefinitionBuilder.genericBeanDefinition(StreamScannerConfigurer.class);
+ BeanDefinitionBuilder.genericBeanDefinition(StreamScannerConfigurer.class);
Set basePackages = new HashSet<>();
basePackages.addAll(
- Arrays.stream(annotationAttributes.getStringArray("value"))
- .filter(StringUtils::hasText)
- .collect(Collectors.toList()));
+ Arrays.stream(annotationAttributes.getStringArray("value"))
+ .filter(StringUtils::hasText)
+ .collect(Collectors.toSet()));
basePackages.addAll(
- Arrays.stream(annotationAttributes.getStringArray("basePackages"))
- .filter(StringUtils::hasText)
- .collect(Collectors.toList()));
+ Arrays.stream(annotationAttributes.getStringArray("basePackages"))
+ .filter(StringUtils::hasText)
+ .collect(Collectors.toSet()));
basePackages.addAll(
- Arrays.stream(annotationAttributes.getClassArray("basePackageClasses"))
- .filter(Objects::nonNull)
- .map(ClassUtils::getPackageName)
- .collect(Collectors.toList()));
+ Arrays.stream(annotationAttributes.getClassArray("basePackageClasses"))
+ .filter(Objects::nonNull)
+ .map(ClassUtils::getPackageName)
+ .collect(Collectors.toSet()));
builder.addPropertyValue("basePackages", basePackages);
+
+ Set> classes = Arrays.stream(annotationAttributes.getClassArray("classes"))
+ .filter(Objects::nonNull)
+ .collect(Collectors.toSet());
+ builder.addPropertyValue("classes", classes);
+
+ Class extends Annotation> annotation = annotationAttributes.getClass("annotation");
+ if (!Annotation.class.equals(annotation)) {
+ builder.addPropertyValue("annotation", annotation);
+ }
+
+ Class> scanInterface = annotationAttributes.getClass("interfaceClass");
+ if (!Class.class.equals(scanInterface)) {
+ builder.addPropertyValue("interfaceClass", scanInterface);
+ }
+
registry.registerBeanDefinition("streamScannerConfigurer", builder.getBeanDefinition());
}
+
}
diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/DatabaseTest.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/DatabaseTest.java
index 36154306fde9569c84405d124d080b561e4def4e..fc34d8f0f46f2ca75549eb7bde176b0edf992d7e 100644
--- a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/DatabaseTest.java
+++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/DatabaseTest.java
@@ -462,31 +462,4 @@ class DatabaseTest {
Assertions.assertTrue(Database.isDynamicMapper(roleMapperClass.getName()));
}
}
-
- @Test
- void testWhereRelation() {
- LambdaQueryWrapper wrapper =
- Database.inList(
- Wrappers.lambdaQuery(UserInfo.class),
- Lists.of(
- new UserInfo() {
- {
- setName("Jon");
- }
- },
- new UserInfo() {
- {
- setEmail("test2@baomidou.com");
- }
- },
- new UserInfo() {
- {
- setName("Tom");
- }
- }));
- List userInfos = Database.list(wrapper);
- Assertions.assertEquals("Jon", userInfos.get(0).getName());
- Assertions.assertEquals("test2@baomidou.com", userInfos.get(1).getEmail());
- Assertions.assertEquals("Tom", userInfos.get(2).getName());
- }
}
diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/MybatisPlusTestApplication.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/MybatisPlusTestApplication.java
index a50af7c5eebd1029a9dff1cb0db4943518681546..f0af5afccfcaa96fca685687f80f1fd2eff4b104 100644
--- a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/MybatisPlusTestApplication.java
+++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/MybatisPlusTestApplication.java
@@ -21,6 +21,8 @@ import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.dromara.streamquery.stream.plugin.mybatisplus.engine.annotation.EnableMybatisPlusPlugin;
+import org.dromara.streamquery.stream.plugin.mybatisplus.annotation.Entity;
+import org.dromara.streamquery.stream.plugin.mybatisplus.pojo.po.ParentScan;
import org.dromara.streamquery.stream.plugin.mybatisplus.pojo.po.RoleInfo;
import org.dromara.streamquery.stream.plugin.mybatisplus.pojo.po.UserInfo;
import org.dromara.streamquery.stream.plugin.mybatisplus.pojo.po.UserRole;
@@ -34,11 +36,12 @@ import org.springframework.context.annotation.Bean;
* @since 2022/5/21
*/
@EnableMybatisPlusPlugin(
- value = "org.dromara.streamquery.stream.plugin.mybatisplus.pojo.po",
- basePackages = "org.dromara.streamquery.stream.plugin.mybatisplus.pojo.po",
+// value = "org.dromara.streamquery.stream.plugin.mybatisplus.pojo.po",
+ basePackages = "org.dromara.streamquery.stream.plugin.*.pojo.po",
basePackageClasses = {RoleInfo.class, UserInfo.class, UserRole.class},
- classes = {RoleInfo.class, UserInfo.class, UserRole.class}
-)
+ annotation = Entity.class,
+ interfaceClass = ParentScan.class,
+ classes = {RoleInfo.class})
@SpringBootApplication
public class MybatisPlusTestApplication {
/**
diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/WrapperHelperTest.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/WrapperHelperTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..475b5b2054fcfb5bd218c0d12aa96eaaa904f1e9
--- /dev/null
+++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/WrapperHelperTest.java
@@ -0,0 +1,88 @@
+package org.dromara.streamquery.stream.plugin.mybatisplus;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.test.autoconfigure.MybatisPlusTest;
+import lombok.val;
+import org.dromara.streamquery.stream.core.collection.Lists;
+import org.dromara.streamquery.stream.plugin.mybatisplus.pojo.po.UserInfo;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * @author VampireAchao
+ * @since 2023/4/13 18:02
+ */
+@MybatisPlusTest
+class WrapperHelperTest {
+
+ @Test
+ void testMultiIn() {
+ LambdaQueryWrapper wrapper =
+ WrapperHelper.multiIn(
+ Wrappers.lambdaQuery(UserInfo.class),
+ Lists.of(
+ new UserInfo() {
+ {
+ setName("Jon");
+ }
+ },
+ new UserInfo() {
+ {
+ setEmail("test2@baomidou.com");
+ }
+ },
+ new UserInfo() {
+ {
+ setName("Tom");
+ }
+ }));
+ // ==> Preparing: SELECT id,name,age,email,version,gmt_deleted FROM user_info WHERE
+ // gmt_deleted='2001-01-01 00:00:00' AND ((name IN (?,?) OR email IN (?)))
+ // ==> Parameters: Jon(String), Tom(String), test2@baomidou.com(String)
+ List userInfos = Database.list(wrapper);
+ Assertions.assertEquals("Jon", userInfos.get(0).getName());
+ Assertions.assertEquals("test2@baomidou.com", userInfos.get(1).getEmail());
+ Assertions.assertEquals("Tom", userInfos.get(2).getName());
+ }
+
+ @Test
+ void testMultiOr() {
+ val dataList =
+ Lists.of(
+ new UserInfo() {
+ {
+ setName("Jon");
+ }
+ },
+ new UserInfo() {
+ {
+ setEmail("test2@baomidou.com");
+ }
+ },
+ new UserInfo() {
+ {
+ setName("Tom");
+ }
+ });
+ val wrapper =
+ WrapperHelper.multiOr(
+ Wrappers.lambdaQuery(UserInfo.class),
+ dataList,
+ (w, data) -> {
+ w.eq(Objects.nonNull(data.getEmail()), UserInfo::getEmail, data.getEmail())
+ .eq(StringUtils.isNotBlank(data.getName()), UserInfo::getName, data.getName());
+ });
+ // ==> Preparing: SELECT id,name,age,email,version,gmt_deleted FROM user_info WHERE
+ // gmt_deleted='2001-01-01 00:00:00' AND ((name = ? OR email = ? OR name = ?))
+ // ==> Parameters: Jon(String), test2@baomidou.com(String), Tom(String)
+ List userInfos = Database.list(wrapper);
+ Assertions.assertEquals("Jon", userInfos.get(0).getName());
+ Assertions.assertEquals("test2@baomidou.com", userInfos.get(1).getEmail());
+ Assertions.assertEquals("Tom", userInfos.get(2).getName());
+ }
+}
diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/annotation/Entity.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/annotation/Entity.java
new file mode 100644
index 0000000000000000000000000000000000000000..79bd87518d834f33add0a7b440a03499d7c02e1d
--- /dev/null
+++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/annotation/Entity.java
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.dromara.streamquery.stream.plugin.mybatisplus.annotation;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Inherited;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * @author KamTo Hung
+ */
+@Retention(RetentionPolicy.RUNTIME)
+@Target({ElementType.TYPE})
+@Documented
+@Inherited
+public @interface Entity {
+}
diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/ParentScan.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/ParentScan.java
new file mode 100644
index 0000000000000000000000000000000000000000..4d7a5a66e11494a97529788bdd22c578ec4ffbdf
--- /dev/null
+++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/ParentScan.java
@@ -0,0 +1,23 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.dromara.streamquery.stream.plugin.mybatisplus.pojo.po;
+
+/**
+ * @author KamTo Hung
+ */
+public interface ParentScan {
+}
diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/RoleInfo.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/RoleInfo.java
index 82283036d2d0da93cba0e1a7eb69cd71175a669f..b5feb3a276c418053541d85421fc4ec2eb2d6958 100644
--- a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/RoleInfo.java
+++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/RoleInfo.java
@@ -21,6 +21,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
+import org.dromara.streamquery.stream.plugin.mybatisplus.annotation.Entity;
/**
* RoleInfo
@@ -29,6 +30,7 @@ import lombok.Data;
* @since 2022/5/23
*/
@Data
+@Entity
@KeySequence(dbType = DbType.H2)
public class RoleInfo {
diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/UserInfo.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/UserInfo.java
index 44bb68c81d91055b4373ca9252699f1fc31a6fd8..8b47d0744ecfb398c3b606696bc367d26c3133f4 100644
--- a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/UserInfo.java
+++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/UserInfo.java
@@ -31,7 +31,7 @@ import java.time.LocalDateTime;
* @since 2022/5/21
*/
@Data
-public class UserInfo {
+public class UserInfo implements ParentScan {
private static final long serialVersionUID = -7219188882388819210L;
@@ -41,7 +41,8 @@ public class UserInfo {
private String name;
private Integer age;
private String email;
- @Version private Integer version;
+ @Version
+ private Integer version;
@TableLogic(value = "'2001-01-01 00:00:00'", delval = "NOW()")
private LocalDateTime gmtDeleted;
diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/inner/AddressInfo.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/inner/AddressInfo.java
new file mode 100644
index 0000000000000000000000000000000000000000..927f2ec7180c0f25cd45bc30e8c90fe25dbfda26
--- /dev/null
+++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/inner/AddressInfo.java
@@ -0,0 +1,20 @@
+package org.dromara.streamquery.stream.plugin.mybatisplus.pojo.po.inner;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import org.dromara.streamquery.stream.plugin.mybatisplus.annotation.Entity;
+
+/**
+ * @author KamTo Hung
+ */
+@Data
+@Entity
+public class AddressInfo {
+
+ @TableId(type = IdType.ASSIGN_ID)
+ private String id;
+
+ private String address;
+
+}
diff --git a/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/package-info.java b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/package-info.java
new file mode 100644
index 0000000000000000000000000000000000000000..adf5fdf908375d1abe3a376a15ec350f60809bf7
--- /dev/null
+++ b/stream-plugin/stream-plugin-mybatis-plus/src/test/java/org/dromara/streamquery/stream/plugin/mybatisplus/pojo/po/package-info.java
@@ -0,0 +1,17 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.dromara.streamquery.stream.plugin.mybatisplus.pojo.po;
\ No newline at end of file