mirror of
https://github.com/dataease/dataease.git
synced 2025-02-24 19:42:56 +08:00
feat: 【数据源】数据源类型增加mariadb和doris分类
This commit is contained in:
parent
12755fa546
commit
cf5cf54363
@ -39,7 +39,7 @@ public class CommonConfig {
|
||||
datasource.setId("doris");
|
||||
datasource.setName("doris");
|
||||
datasource.setDesc("doris");
|
||||
datasource.setType("doris");
|
||||
datasource.setType("de_doris");
|
||||
datasource.setConfiguration(jsonObject.toJSONString());
|
||||
return datasource;
|
||||
}
|
||||
|
@ -3,9 +3,11 @@ package io.dataease.datasource.constants;
|
||||
public enum DatasourceTypes {
|
||||
excel("excel", "excel", "", "", "", "", ""),
|
||||
mysql("mysql", "mysql", "com.mysql.jdbc.Driver", "`", "`", "'", "'"),
|
||||
mariadb("mariadb", "mariadb", "com.mysql.jdbc.Driver", "`", "`", "'", "'"),
|
||||
ds_doris("ds_doris", "ds_doris", "com.mysql.jdbc.Driver", "`", "`", "'", "'"),
|
||||
pg("pg", "pg", "org.postgresql.Driver", "\"", "\"", "\"", "\""),
|
||||
sqlServer("sqlServer", "sqlServer", "com.microsoft.sqlserver.jdbc.SQLServerDriver", "\"", "\"", "\"", "\""),
|
||||
doris("doris", "doris", "com.mysql.jdbc.Driver", "`", "`", "", ""),
|
||||
de_doris("de_doris", "de_doris", "com.mysql.jdbc.Driver", "`", "`", "", ""),
|
||||
oracle("oracle", "oracle", "oracle.jdbc.driver.OracleDriver", "\"", "\"", "\"", "\""),
|
||||
ck("ch", "ch", "ru.yandex.clickhouse.ClickHouseDriver", "`", "`", "'", "'"),
|
||||
es("es", "es", "", "\"", "\"", "\"", "\"");
|
||||
|
@ -441,19 +441,15 @@ public class JdbcProvider extends DatasourceProvider {
|
||||
Properties props = new Properties();
|
||||
switch (datasourceType) {
|
||||
case mysql:
|
||||
case mariadb:
|
||||
case de_doris:
|
||||
case ds_doris:
|
||||
MysqlConfigration mysqlConfigration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), MysqlConfigration.class);
|
||||
username = mysqlConfigration.getUsername();
|
||||
password = mysqlConfigration.getPassword();
|
||||
driver = mysqlConfigration.getDriver();
|
||||
jdbcurl = mysqlConfigration.getJdbc();
|
||||
break;
|
||||
case doris:
|
||||
MysqlConfigration dorisConfigration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), MysqlConfigration.class);
|
||||
username = dorisConfigration.getUsername();
|
||||
password = dorisConfigration.getPassword();
|
||||
driver = dorisConfigration.getDriver();
|
||||
jdbcurl = dorisConfigration.getJdbc();
|
||||
break;
|
||||
case sqlServer:
|
||||
SqlServerConfigration sqlServerConfigration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), SqlServerConfigration.class);
|
||||
username = sqlServerConfigration.getUsername();
|
||||
@ -502,6 +498,9 @@ public class JdbcProvider extends DatasourceProvider {
|
||||
JdbcDTO jdbcDTO = new JdbcDTO();
|
||||
switch (datasourceType) {
|
||||
case mysql:
|
||||
case mariadb:
|
||||
case de_doris:
|
||||
case ds_doris:
|
||||
MysqlConfigration mysqlConfigration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), MysqlConfigration.class);
|
||||
dataSource.setUser(mysqlConfigration.getUsername());
|
||||
dataSource.setDriverClass(mysqlConfigration.getDriver());
|
||||
@ -509,14 +508,6 @@ public class JdbcProvider extends DatasourceProvider {
|
||||
dataSource.setJdbcUrl(mysqlConfigration.getJdbc());
|
||||
jdbcDTO = mysqlConfigration;
|
||||
break;
|
||||
case doris:
|
||||
MysqlConfigration dorisConfigration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), MysqlConfigration.class);
|
||||
dataSource.setUser(dorisConfigration.getUsername());
|
||||
dataSource.setDriverClass(dorisConfigration.getDriver());
|
||||
dataSource.setPassword(dorisConfigration.getPassword());
|
||||
dataSource.setJdbcUrl(dorisConfigration.getJdbc());
|
||||
jdbcDTO = dorisConfigration;
|
||||
break;
|
||||
case sqlServer:
|
||||
SqlServerConfigration sqlServerConfigration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), SqlServerConfigration.class);
|
||||
dataSource.setUser(sqlServerConfigration.getUsername());
|
||||
@ -559,11 +550,11 @@ public class JdbcProvider extends DatasourceProvider {
|
||||
DatasourceTypes datasourceType = DatasourceTypes.valueOf(datasourceRequest.getDatasource().getType());
|
||||
switch (datasourceType) {
|
||||
case mysql:
|
||||
case de_doris:
|
||||
case ds_doris:
|
||||
case mariadb:
|
||||
MysqlConfigration mysqlConfigration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), MysqlConfigration.class);
|
||||
return mysqlConfigration.getDataBase();
|
||||
case doris:
|
||||
MysqlConfigration dorisConfigration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), MysqlConfigration.class);
|
||||
return dorisConfigration.getDataBase();
|
||||
case sqlServer:
|
||||
SqlServerConfigration sqlServerConfigration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), SqlServerConfigration.class);
|
||||
return sqlServerConfigration.getDataBase();
|
||||
@ -580,8 +571,9 @@ public class JdbcProvider extends DatasourceProvider {
|
||||
DatasourceTypes datasourceType = DatasourceTypes.valueOf(datasourceRequest.getDatasource().getType());
|
||||
switch (datasourceType) {
|
||||
case mysql:
|
||||
return "show tables;";
|
||||
case doris:
|
||||
case mariadb:
|
||||
case de_doris:
|
||||
case ds_doris:
|
||||
return "show tables;";
|
||||
case sqlServer:
|
||||
SqlServerConfigration sqlServerConfigration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), SqlServerConfigration.class);
|
||||
@ -615,8 +607,10 @@ public class JdbcProvider extends DatasourceProvider {
|
||||
DatasourceTypes datasourceType = DatasourceTypes.valueOf(datasourceRequest.getDatasource().getType());
|
||||
switch (datasourceType) {
|
||||
case mysql:
|
||||
return null;
|
||||
case doris:
|
||||
case mariadb:
|
||||
case de_doris:
|
||||
case ds_doris:
|
||||
case ck:
|
||||
return null;
|
||||
case sqlServer:
|
||||
SqlServerConfigration sqlServerConfigration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), SqlServerConfigration.class);
|
||||
@ -638,8 +632,6 @@ public class JdbcProvider extends DatasourceProvider {
|
||||
throw new Exception(Translator.get("i18n_schema_is_empty"));
|
||||
}
|
||||
return "SELECT viewname FROM pg_views WHERE schemaname='SCHEMA' ;".replace("SCHEMA", pgConfigration.getSchema());
|
||||
case ck:
|
||||
return null;
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
|
@ -22,14 +22,6 @@ public class ProviderFactory implements ApplicationContextAware {
|
||||
public static DatasourceProvider getProvider(String type) {
|
||||
DatasourceTypes datasourceType = DatasourceTypes.valueOf(type);
|
||||
switch (datasourceType) {
|
||||
case mysql:
|
||||
return context.getBean("jdbc", DatasourceProvider.class);
|
||||
case doris:
|
||||
return context.getBean("jdbc", DatasourceProvider.class);
|
||||
case sqlServer:
|
||||
return context.getBean("jdbc", DatasourceProvider.class);
|
||||
case pg:
|
||||
return context.getBean("jdbc", DatasourceProvider.class);
|
||||
case es:
|
||||
return context.getBean("es", DatasourceProvider.class);
|
||||
default:
|
||||
@ -41,8 +33,10 @@ public class ProviderFactory implements ApplicationContextAware {
|
||||
DatasourceTypes datasourceType = DatasourceTypes.valueOf(type);
|
||||
switch (datasourceType) {
|
||||
case mysql:
|
||||
case mariadb:
|
||||
case ds_doris:
|
||||
return context.getBean("mysqlQuery", QueryProvider.class);
|
||||
case doris:
|
||||
case de_doris:
|
||||
return context.getBean("dorisQuery", QueryProvider.class);
|
||||
case sqlServer:
|
||||
return context.getBean("sqlserverQuery", QueryProvider.class);
|
||||
@ -62,7 +56,7 @@ public class ProviderFactory implements ApplicationContextAware {
|
||||
public static DDLProvider getDDLProvider(String type) {
|
||||
DatasourceTypes datasourceType = DatasourceTypes.valueOf(type);
|
||||
switch (datasourceType) {
|
||||
case doris:
|
||||
case de_doris:
|
||||
return context.getBean("dorisDDL", DDLProvider.class);
|
||||
default:
|
||||
return context.getBean("dorisDDL", DDLProvider.class);
|
||||
|
@ -2,16 +2,16 @@ package io.dataease.provider.doris;
|
||||
|
||||
import io.dataease.provider.SQLConstants;
|
||||
|
||||
import static io.dataease.datasource.constants.DatasourceTypes.doris;
|
||||
import static io.dataease.datasource.constants.DatasourceTypes.de_doris;
|
||||
|
||||
/**
|
||||
* @Author gin
|
||||
* @Date 2021/7/8 7:22 下午
|
||||
*/
|
||||
public class DorisConstants extends SQLConstants {
|
||||
public static final String KEYWORD_TABLE = doris.getKeywordPrefix() + "%s" + doris.getKeywordSuffix();
|
||||
public static final String KEYWORD_TABLE = de_doris.getKeywordPrefix() + "%s" + de_doris.getKeywordSuffix();
|
||||
|
||||
public static final String KEYWORD_FIX = "%s." + doris.getKeywordPrefix() + "%s" + doris.getKeywordSuffix();
|
||||
public static final String KEYWORD_FIX = "%s." + de_doris.getKeywordPrefix() + "%s" + de_doris.getKeywordSuffix();
|
||||
|
||||
public static final String UNIX_TIMESTAMP = "UNIX_TIMESTAMP(%s)";
|
||||
|
||||
|
@ -763,6 +763,8 @@ public class ExtractDataService {
|
||||
String transName = null;
|
||||
|
||||
switch (datasourceType) {
|
||||
case ds_doris:
|
||||
case mariadb:
|
||||
case mysql:
|
||||
MysqlConfigration mysqlConfigration = new Gson().fromJson(datasource.getConfiguration(), MysqlConfigration.class);
|
||||
dataMeta = new DatabaseMeta("db", "MYSQL", "Native", mysqlConfigration.getHost().trim(), mysqlConfigration.getDataBase().trim(), mysqlConfigration.getPort().toString(), mysqlConfigration.getUsername(), mysqlConfigration.getPassword());
|
||||
|
@ -158,6 +158,10 @@ export default {
|
||||
return 'Elasticsearch'
|
||||
} else if (type === 'ck') {
|
||||
return 'ClickHouse'
|
||||
} else if (type === 'mariadb') {
|
||||
return 'MariaDB'
|
||||
} else if (type === 'ds_doris') {
|
||||
return 'Doris'
|
||||
}
|
||||
},
|
||||
|
||||
|
@ -153,6 +153,8 @@ export default {
|
||||
{ name: 'sqlServer', label: 'SQL Server', type: 'jdbc' },
|
||||
{ name: 'pg', label: 'PostgreSQL', type: 'jdbc' },
|
||||
{ name: 'es', label: 'Elasticsearch', type: 'es' },
|
||||
{ name: 'mariadb', label: 'MariaDB', type: 'jdbc' },
|
||||
{ name: 'ds_doris', label: 'Doris', type: 'jdbc' },
|
||||
{ name: 'ck', label: 'ClickHouse', type: 'jdbc' }
|
||||
],
|
||||
schemas: [],
|
||||
|
Loading…
Reference in New Issue
Block a user