diff --git a/pig-visual/pig-codegen/src/main/java/com/pig4cloud/pig/codegen/controller/GenDsConfController.java b/pig-visual/pig-codegen/src/main/java/com/pig4cloud/pig/codegen/controller/GenDsConfController.java index bf301fe75ed6de9f62e847963c562d4e16cacd8f..a68fcd00a9fa0e5b0e2e1c3cc4c1e2f69f15a207 100755 --- a/pig-visual/pig-codegen/src/main/java/com/pig4cloud/pig/codegen/controller/GenDsConfController.java +++ b/pig-visual/pig-codegen/src/main/java/com/pig4cloud/pig/codegen/controller/GenDsConfController.java @@ -20,11 +20,16 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.pig4cloud.pig.codegen.entity.GenDatasourceConf; import com.pig4cloud.pig.codegen.service.GenDatasourceConfService; import com.pig4cloud.pig.common.core.util.R; +import com.pig4cloud.pig.common.datasource.support.DriverClassNameConstants; import com.pig4cloud.pig.common.log.annotation.SysLog; import io.swagger.annotations.Api; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + /** * 数据源管理 * @@ -37,11 +42,14 @@ import org.springframework.web.bind.annotation.*; @Api(value = "dsconf", tags = "数据源管理模块") public class GenDsConfController { + private static List driverList = null; + private final GenDatasourceConfService datasourceConfService; /** * 分页查询 - * @param page 分页对象 + * + * @param page 分页对象 * @param datasourceConf 数据源表 * @return */ @@ -52,6 +60,7 @@ public class GenDsConfController { /** * 查询全部数据源 + * * @return */ @GetMapping("/list") @@ -61,6 +70,7 @@ public class GenDsConfController { /** * 通过id查询数据源表 + * * @param id id * @return R */ @@ -71,6 +81,7 @@ public class GenDsConfController { /** * 新增数据源表 + * * @param datasourceConf 数据源表 * @return R */ @@ -82,6 +93,7 @@ public class GenDsConfController { /** * 修改数据源表 + * * @param conf 数据源表 * @return R */ @@ -93,6 +105,7 @@ public class GenDsConfController { /** * 通过id删除数据源表 + * * @param id id * @return R */ @@ -102,4 +115,21 @@ public class GenDsConfController { return R.ok(datasourceConfService.removeByDsId(id)); } + /** + * 获得支持的数据库驱动 + * + * @return 数据库驱动列表 + */ + @SysLog("获得支持的数据库驱动") + @GetMapping("/driver") + public R> driverList() { + return Optional.ofNullable(driverList).map(R::ok).orElseGet(() -> { + driverList = new ArrayList<>(); + for (DriverClassNameConstants driverClassNameConstant : DriverClassNameConstants.values()) { + driverList.add(driverClassNameConstant.getDriverClassName()); + } + return R.ok(driverList); + }); + } + }