数据源管理 列表和新增页面 100%

This commit is contained in:
守護
2024-04-06 17:41:41 +08:00
parent d72b1c2d68
commit fe9a0dcbd6
13 changed files with 578 additions and 38 deletions

View File

@@ -24,6 +24,11 @@ public class DbConnectionDetailConverter extends
response.setType(databaseConnectionEntity.getType());
response.setVersion(databaseConnectionEntity.getVersion());
response.setDriver(databaseConnectionEntity.getDriver());
response.setMode(databaseConnectionEntity.getMode());
response.setAddress(databaseConnectionEntity.getAddress());
response.setPort(databaseConnectionEntity.getPort());
response.setDatabaseName(databaseConnectionEntity.getDatabaseName());
response.setCharacterEncoding(databaseConnectionEntity.getCharacterEncoding());
response.setUrl(databaseConnectionEntity.getUrl());
response.setUsername(databaseConnectionEntity.getUsername());
response.setPassword(databaseConnectionEntity.getPassword());

View File

@@ -77,6 +77,13 @@ public class ConnectionController {
return connectionService.test(id);
}
@TokenCheck
@ApiOperation(value = "预测试连接")
@PostMapping(value = "/preTest", produces = MediaType.APPLICATION_JSON_VALUE)
public Result preTest(@RequestBody DbConnectionCreateRequest request) {
return connectionService.preTest(request);
}
@TokenCheck
@ApiOperation(value = "查询连接的Schema列表")
@GetMapping(value = "/schemas/get/{id}", produces = MediaType.APPLICATION_JSON_VALUE)

View File

@@ -44,6 +44,21 @@ public class DatabaseConnectionEntity {
@TableField("driver")
private String driver;
@TableField("mode")
private Integer mode;
@TableField("address")
private String address;
@TableField("port")
private String port;
@TableField("database_name")
private String databaseName;
@TableField("character_encoding")
private String characterEncoding;
@TableField("url")
private String url;

View File

@@ -22,6 +22,11 @@ public class DbConnectionCreateRequest {
private ProductTypeEnum type;
private String version;
private String driver;
private Integer mode;
private String address;
private String port;
private String databaseName;
private String characterEncoding;
private String url;
private String username;
private String password;
@@ -33,6 +38,11 @@ public class DbConnectionCreateRequest {
databaseConnectionEntity.setType(type);
databaseConnectionEntity.setVersion(version.trim());
databaseConnectionEntity.setDriver(driver.trim());
databaseConnectionEntity.setMode(0);
databaseConnectionEntity.setAddress(address.trim());
databaseConnectionEntity.setPort(port.trim());
databaseConnectionEntity.setDatabaseName(databaseName.trim());
databaseConnectionEntity.setCharacterEncoding(characterEncoding.trim());
databaseConnectionEntity.setUrl(url.trim());
databaseConnectionEntity.setUsername(username);
databaseConnectionEntity.setPassword(password);

View File

@@ -34,4 +34,7 @@ public class DatabaseTypeDetailResponse {
@ApiModelProperty("数据库名称")
private String name;
@ApiModelProperty("数据库链接模板")
private String url;
}

View File

@@ -37,6 +37,21 @@ public class DbConnectionDetailResponse {
@ApiModelProperty("驱动类")
private String driver;
@ApiModelProperty("连接模式0默认 1专业")
private Integer mode;
@ApiModelProperty("连接地址")
private String address;
@ApiModelProperty("连接端口号")
private String port;
@ApiModelProperty("数据库名")
private String databaseName;
@ApiModelProperty("编码格式")
private String characterEncoding;
@ApiModelProperty("URL连接串")
private String url;

View File

@@ -94,6 +94,7 @@ public class ConnectionService {
detail.setDriver(type.getDriver());
detail.setSample(type.getSample());
detail.setName(type.getName());
detail.setUrl(type.getUrl()[0]);
lists.add(detail);
}
@@ -281,4 +282,21 @@ public class ConnectionService {
}
}
public Result preTest(DbConnectionCreateRequest request) {
DatabaseConnectionEntity dbConn = new DatabaseConnectionEntity();
dbConn.setType(request.getType());
dbConn.setUsername(request.getUsername());
dbConn.setPassword(request.getPassword());
dbConn.setName(request.getName());
dbConn.setVersion(request.getVersion());
dbConn.setUrl(request.getUrl());
dbConn.setDriver(request.getDriver());
MetadataService metaDataService = getMetaDataCoreService(dbConn);
try {
metaDataService.testQuerySQL(dbConn.getType().getSql());
} finally {
metaDataService.close();
}
return Result.success();
}
}

View File

@@ -0,0 +1,14 @@
ALTER TABLE `DBSWITCH_DATABASE_CONNECTION`
ADD COLUMN `mode` varchar(20) not null default '0' comment '连接模式0默认 1专业' AFTER `driver`;
ALTER TABLE `DBSWITCH_DATABASE_CONNECTION`
ADD COLUMN `address` varchar(200) not null default '' comment '连接地址' AFTER `mode`;
ALTER TABLE `DBSWITCH_DATABASE_CONNECTION`
ADD COLUMN `port` varchar(20) not null default '' comment '连接端口号' AFTER `address`;
ALTER TABLE `DBSWITCH_DATABASE_CONNECTION`
ADD COLUMN `database_name` varchar(200) not null default '' comment '数据库名' AFTER `port`;
ALTER TABLE `DBSWITCH_DATABASE_CONNECTION`
ADD COLUMN `character_encoding` varchar(20) not null default '' comment '编码格式' AFTER `database_name`;