ETL/etl-cleaning/src/main/java/com/etl/cleaning/controller/DatabaseController.java

44 lines
1.6 KiB
Java

package com.etl.cleaning.controller;
import com.etl.cleaning.config.DatabaseConfig;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.datasource.DriverManagerDataSource;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 动态链接mysql数据源
*/
@RestController
@RequestMapping("/data")
public class DatabaseController {
/**
* jdbc连接
* @param databaseConfig
* @return
*/
@PostMapping("/test-database-connection")
public String testDatabaseConnection(@RequestBody DatabaseConfig databaseConfig) {
try {
//创建数据源
DriverManagerDataSource dataSource = new DriverManagerDataSource();
//设置数据源的驱动类名,URL,用户名,密码
dataSource.setDriverClassName(databaseConfig.getDriverClassName());
dataSource.setUrl(databaseConfig.getUrl());
dataSource.setUsername(databaseConfig.getUsername());
dataSource.setPassword(databaseConfig.getPassword());
//创建数据源
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
//sql测试
jdbcTemplate.execute("select * from user");
return "ok";
}catch (Exception e){
//如果发生异常,打印异常信息
e.printStackTrace();
return "error";
}
}
}