编写测试连接的代码

master
冷调 2024-08-23 20:48:34 +08:00
parent 1a67885ef0
commit 5f05af1063
1 changed files with 16 additions and 2 deletions

View File

@ -100,17 +100,23 @@ public class DataSourceServiceImpl extends ServiceImpl<DataSourceMapper, DataSou
DataType dataType = dataTypeService.getOne(new LambdaQueryWrapper<>() {{
eq(DataType::getType, dataSource.getDataType());
}});
//
String jdbcUrl="";
String className="";
boolean flag=false;
try{
//判空
if(dataType.getDriverManager()!=null && dataType.getPrefix()!=null){
if("MySql".equals(dataType.getType())){
className=dataType.getDriverManager();
//mysql拼接连接路径
jdbcUrl=dataType.getDriverManager()+dataType.getPrefix()+dataSource.getIp()+":"+dataSource.getPort()+"/"+dataSource.getDatabaseName()+"?"+dataSource.getConnectionParam();
}
flag=testConnection(dataType.getDriverManager(),jdbcUrl,dataSource.getUserName(),dataSource.getPassword());
if("Oracle".equals(dataType.getType())){
className=dataType.getDriverManager();
//oracle拼接连接路径
jdbcUrl=dataType.getDriverManager()+dataType.getPrefix()+dataSource.getIp()+":"+dataSource.getPort()+":"+dataSource.getDatabaseName()+"?"+dataSource.getConnectionParam();
}
flag=testConnection(className,jdbcUrl,dataSource.getUserName(),dataSource.getPassword());
}
return flag;
}catch (Exception e){
@ -119,6 +125,14 @@ public class DataSourceServiceImpl extends ServiceImpl<DataSourceMapper, DataSou
return flag;
}
/**
*
* @param driverManager
* @param jdbcUrl
* @param userName
* @param password
* @return
*/
private boolean testConnection(String driverManager, String jdbcUrl, String userName, String password) {
if(StringUtils.isNotEmpty(driverManager) && StringUtils.isNotEmpty(jdbcUrl) && StringUtils.isNotEmpty(userName) && StringUtils.isNotEmpty(password)){
try{