diff --git a/src/main/java/com/imyeyu/spring/util/SQLProvider.java b/src/main/java/com/imyeyu/spring/util/SQLProvider.java index 54098fe..0e4ad91 100644 --- a/src/main/java/com/imyeyu/spring/util/SQLProvider.java +++ b/src/main/java/com/imyeyu/spring/util/SQLProvider.java @@ -272,7 +272,7 @@ public class SQLProvider { * @param context 代理器上下文 * @return 实体类元数据 */ - private EntityMeta getEntityMeta(ProviderContext context) { + protected EntityMeta getEntityMeta(ProviderContext context) { Type[] types = context.getMapperType().getGenericInterfaces(); ParameterizedType type = (ParameterizedType) types[0]; Class entityClass = (Class) type.getActualTypeArguments()[0]; @@ -285,7 +285,7 @@ public class SQLProvider { * @param entityClass 实体类 * @return 元数据 */ - private EntityMeta getEntityMeta(Class entityClass) { + protected EntityMeta getEntityMeta(Class entityClass) { return ENTITY_META_CACHE.computeIfAbsent(entityClass, EntityMeta::new); } @@ -295,7 +295,7 @@ public class SQLProvider { * @author 夜雨 * @since 2025-02-05 23:47 */ - private static class EntityMeta { + protected static class EntityMeta { /** 实体类 */ final Class entityClass; @@ -375,6 +375,42 @@ public class SQLProvider { canDelete = Deletable.class.isAssignableFrom(entityClass); canDestroy = Destroyable.class.isAssignableFrom(entityClass); } + + public Class getEntityClass() { + return entityClass; + } + + public String getTable() { + return table; + } + + public String getSelectAllClause() { + return selectAllClause; + } + + public FieldColumn getIdFieldColumn() { + return idFieldColumn; + } + + public List getFieldColumnList() { + return fieldColumnList; + } + + public boolean canCreate() { + return canCreate; + } + + public boolean canUpdate() { + return canUpdate; + } + + public boolean canDelete() { + return canDelete; + } + + public boolean canDestroy() { + return canDestroy; + } } /** @@ -383,7 +419,7 @@ public class SQLProvider { * @author 夜雨 * @since 2025-02-07 09:54 */ - private static class FieldColumn { + protected static class FieldColumn { /** 字段 */ final Field field; @@ -421,5 +457,29 @@ public class SQLProvider { isAutoUpperUUID = false; } } + + public Field getField() { + return field; + } + + public String getFieldName() { + return fieldName; + } + + public String getColumnName() { + return columnName; + } + + public boolean isId() { + return isId; + } + + public boolean isAutoUUID() { + return isAutoUUID; + } + + public boolean isAutoUpperUUID() { + return isAutoUpperUUID; + } } }