diff --git a/src/main/java/org/redkale/persistence/SourceResource.java b/src/main/java/org/redkale/persistence/SourceResource.java deleted file mode 100644 index b45543929..000000000 --- a/src/main/java/org/redkale/persistence/SourceResource.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * - */ -package org.redkale.persistence; - -import java.lang.annotation.Documented; -import static java.lang.annotation.ElementType.TYPE; -import java.lang.annotation.Inherited; -import java.lang.annotation.Retention; -import static java.lang.annotation.RetentionPolicy.RUNTIME; -import java.lang.annotation.Target; - -/** - * 指定Source的资源名 - * - *

- * 详情见: https://redkale.org - * - * - * @see org.redkale.source.DataSqlMapper - * - * @author zhangjx - * - * @since 2.8.0 - */ -@Inherited -@Documented -@Target({TYPE}) -@Retention(RUNTIME) -public @interface SourceResource { - - String value(); -} diff --git a/src/main/java/org/redkale/source/DataNativeSqlInfo.java b/src/main/java/org/redkale/source/DataNativeSqlInfo.java index 402714149..ec9f6884d 100644 --- a/src/main/java/org/redkale/source/DataNativeSqlInfo.java +++ b/src/main/java/org/redkale/source/DataNativeSqlInfo.java @@ -25,6 +25,9 @@ public class DataNativeSqlInfo { //jdbc版的sql语句, 只有numberSignNames为空时才有值 protected String jdbcSql; + //sql类型 + protected SqlMode sqlMode; + protected final List rootParamNames = new ArrayList<>(); @ConvertDisabled @@ -40,8 +43,15 @@ public class DataNativeSqlInfo { return jdbcSql; } + public SqlMode getSqlMode() { + return sqlMode; + } + public List getRootParamNames() { return rootParamNames; } + public enum SqlMode { + SELECT, INSERT, DELETE, UPDATE, UPSERT, OTHERS; + } } diff --git a/src/main/java/org/redkale/source/DataSqlMapper.java b/src/main/java/org/redkale/source/DataSqlMapper.java index 43bdc4a9f..9f891b2cb 100644 --- a/src/main/java/org/redkale/source/DataSqlMapper.java +++ b/src/main/java/org/redkale/source/DataSqlMapper.java @@ -10,6 +10,7 @@ import java.util.Map; import java.util.Set; import java.util.concurrent.CompletableFuture; import java.util.stream.Stream; +import org.redkale.asm.AsmDepends; import org.redkale.util.LambdaFunction; import org.redkale.util.LambdaSupplier; import org.redkale.util.SelectColumn; @@ -17,12 +18,10 @@ import org.redkale.util.Sheet; /** * 类似Mybatis的Mapper接口类, 接口系列和DataSource相似度高
- * 子类需要注解数据源{@link org.redkale.persistence.SourceResource},没有指定会找资源名为空的默认DataSqlSource * *

* 详情见: https://redkale.org * - * @see org.redkale.persistence.SourceResource * * @author zhangjx * @param T @@ -36,6 +35,7 @@ public interface DataSqlMapper { * * @return DataSqlSource */ + @AsmDepends DataSqlSource dataSource(); /** @@ -44,6 +44,7 @@ public interface DataSqlMapper { * * @return Class */ + @AsmDepends Class entityType(); /** @@ -364,7 +365,6 @@ public interface DataSqlMapper { * 注意:即使字段标记为@Column(updatable=false)也会被更新
* 等价SQL: UPDATE {table} SET {column} = {value} WHERE {filter node}
* - * @param clazz Entity类 * @param column 待更新的字段名 * @param value 更新值 * @param node 过滤条件 @@ -1557,8 +1557,6 @@ public interface DataSqlMapper { * 获取符合过滤条件单个记录, 返回null表示不存在值
* 等价SQL: SELECT * FROM {table} WHERE {column} = {key}
* - * @param Entity泛型 - * @param clazz Entity类 * @param column 过滤字段名 * @param colval 过滤字段值 * diff --git a/src/main/java/org/redkale/source/spi/DataSqlMapperBuilder.java b/src/main/java/org/redkale/source/spi/DataSqlMapperBuilder.java index 0b0e4bc8c..c860b721b 100644 --- a/src/main/java/org/redkale/source/spi/DataSqlMapperBuilder.java +++ b/src/main/java/org/redkale/source/spi/DataSqlMapperBuilder.java @@ -8,11 +8,21 @@ import org.redkale.source.DataSqlMapper; import org.redkale.source.DataSqlSource; /** + * DataSqlMapper工厂类 + * + *

+ * 详情见: https://redkale.org + * * * @author zhangjx + * + * @since 2.8.0 */ public final class DataSqlMapperBuilder { + private DataSqlMapperBuilder() { + } + public static > M createMapper(DataNativeSqlParser nativeSqlParser, DataSqlSource source, Class mapperType) { return null; } diff --git a/src/main/java/org/redkale/util/ThrowSupplier.java b/src/main/java/org/redkale/util/ThrowSupplier.java index 52c2a031a..94c8065e4 100644 --- a/src/main/java/org/redkale/util/ThrowSupplier.java +++ b/src/main/java/org/redkale/util/ThrowSupplier.java @@ -24,7 +24,7 @@ public interface ThrowSupplier { * Gets a result. * * @return a result - * @throws java.lang.Throwable + * @throws java.lang.Throwable Throwable */ T get() throws Throwable;