添加多运行环境支持 #14
@@ -49,7 +49,9 @@ public class DruidConfig {
|
|||||||
|
|
||||||
private DruidDataSource readConfigFromFile(File file) throws IOException {
|
private DruidDataSource readConfigFromFile(File file) throws IOException {
|
||||||
Properties properties = new Properties();
|
Properties properties = new Properties();
|
||||||
properties.load(new FileInputStream(file));
|
FileInputStream fis = new FileInputStream(file);
|
||||||
|
properties.load(fis);
|
||||||
|
fis.close();
|
||||||
String url = properties.getProperty(DB_CONFIG_URL_PREFIX, null);
|
String url = properties.getProperty(DB_CONFIG_URL_PREFIX, null);
|
||||||
String username = properties.getProperty(DB_CONFIG_USERNAME_PREFIX, null);
|
String username = properties.getProperty(DB_CONFIG_USERNAME_PREFIX, null);
|
||||||
String password = properties.getProperty(DB_CONFIG_PASSWORD_PREFIX, null);
|
String password = properties.getProperty(DB_CONFIG_PASSWORD_PREFIX, null);
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
package cn.celess.blog.configuration;
|
package cn.celess.blog.configuration;
|
||||||
|
|
||||||
import cn.celess.blog.BaseTest;
|
import cn.celess.blog.BaseTest;
|
||||||
|
import cn.celess.blog.enmu.ConfigKeyEnum;
|
||||||
|
import cn.celess.blog.service.fileserviceimpl.LocalFileServiceImpl;
|
||||||
import com.alibaba.druid.pool.DruidDataSource;
|
import com.alibaba.druid.pool.DruidDataSource;
|
||||||
import org.junit.After;
|
import org.junit.After;
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
@@ -43,13 +45,17 @@ public class DruidConfigTest extends BaseTest {
|
|||||||
|
|
||||||
// 有配置文件的测试
|
// 有配置文件的测试
|
||||||
Properties properties = new Properties();
|
Properties properties = new Properties();
|
||||||
properties.load(new FileInputStream(configFile));
|
FileInputStream fileInputStream = new FileInputStream(configFile);
|
||||||
|
properties.load(fileInputStream);
|
||||||
|
fileInputStream.close();
|
||||||
properties.setProperty(DruidConfig.DB_CONFIG_URL_PREFIX, "jdbc:mysql://localhost:3306/blog");
|
properties.setProperty(DruidConfig.DB_CONFIG_URL_PREFIX, "jdbc:mysql://localhost:3306/blog");
|
||||||
properties.setProperty(DruidConfig.DB_CONFIG_DRIVER_CLASS_NAME_PREFIX, "com.mysql.cj.jdbc.Driver");
|
properties.setProperty(DruidConfig.DB_CONFIG_DRIVER_CLASS_NAME_PREFIX, "com.mysql.cj.jdbc.Driver");
|
||||||
properties.setProperty(DruidConfig.DB_CONFIG_USERNAME_PREFIX, "username");
|
properties.setProperty(DruidConfig.DB_CONFIG_USERNAME_PREFIX, "username");
|
||||||
properties.setProperty(DruidConfig.DB_CONFIG_PASSWORD_PREFIX, "password");
|
properties.setProperty(DruidConfig.DB_CONFIG_PASSWORD_PREFIX, "password");
|
||||||
// 保存到文件
|
// 保存到文件
|
||||||
properties.store(new FileOutputStream(configFile), "db config");
|
FileOutputStream fileOutputStream = new FileOutputStream(configFile);
|
||||||
|
properties.store(fileOutputStream, "数据库配置");
|
||||||
|
fileOutputStream.close();
|
||||||
druidDataSource = druidConfig.initDataSource();
|
druidDataSource = druidConfig.initDataSource();
|
||||||
assertEquals(properties.getProperty(DruidConfig.DB_CONFIG_URL_PREFIX), druidDataSource.getUrl());
|
assertEquals(properties.getProperty(DruidConfig.DB_CONFIG_URL_PREFIX), druidDataSource.getUrl());
|
||||||
assertEquals(properties.getProperty(DruidConfig.DB_CONFIG_DRIVER_CLASS_NAME_PREFIX), druidDataSource.getDriverClassName());
|
assertEquals(properties.getProperty(DruidConfig.DB_CONFIG_DRIVER_CLASS_NAME_PREFIX), druidDataSource.getDriverClassName());
|
||||||
@@ -62,12 +68,18 @@ public class DruidConfigTest extends BaseTest {
|
|||||||
if (bakConfigFile.exists()) {
|
if (bakConfigFile.exists()) {
|
||||||
System.out.println("恢复配置文件成功");
|
System.out.println("恢复配置文件成功");
|
||||||
copyFile(bakConfigFile, configFile);
|
copyFile(bakConfigFile, configFile);
|
||||||
bakConfigFile.deleteOnExit();
|
assertTrue(bakConfigFile.delete());
|
||||||
|
} else {
|
||||||
|
configFile.deleteOnExit();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void recordConfig() throws IOException {
|
public void recordConfig() {
|
||||||
|
File path = new File(LocalFileServiceImpl.getPath(System.getProperty(ConfigKeyEnum.BLOG_FILE_PATH.getKey())));
|
||||||
|
if (!path.exists() && !path.mkdirs()) {
|
||||||
|
fail("创建失败");
|
||||||
|
}
|
||||||
this.bakConfigFile = new File(DruidConfig.DB_CONFIG_PATH + ".bak");
|
this.bakConfigFile = new File(DruidConfig.DB_CONFIG_PATH + ".bak");
|
||||||
this.configFile = new File(DruidConfig.DB_CONFIG_PATH);
|
this.configFile = new File(DruidConfig.DB_CONFIG_PATH);
|
||||||
if (configFile.exists()) {
|
if (configFile.exists()) {
|
||||||
|
|||||||
Reference in New Issue
Block a user