从intellij外部配置数据库属性

时间:2017-01-05 08:52:34

标签: java intellij-idea spring-boot

我想问一下,目前我在intellij的持久层中有我的数据库属性,如用户名和密码。但是我想将它放在外面的某个地方,所以如果有人想要更改密码或数据库中的任何配置,他就不必在我当前的结构中挖掘。现在我的结构是持久性然后是main然后是资源,然后是dbconfig属性,所以我可以做任何事情。

1 个答案:

答案 0 :(得分:1)

您可以在app.properties文件夹中创建一个文件resources,其中包含您需要的所有数据库信息:

# Datasource details
testapp.db.driver = org.h2.Driver
testapp.db.url = jdbc:h2:mem:test
testapp.db.username = username
testapp.db.password = password

然后您可以在Java代码中将其引用为:

@Configuration
@PropertySource("app.properties")
public class DataConfig {
    @Autowired
    private Environment env;

    @Bean
    public DataSource dataSource() {
        BasicDataSource ds = new BasicDataSource();
        ds.setDriverClassName(env.getProperty("testapp.db.driver"));
        ds.setUrl(env.getProperty("testapp.db.url"));
        ds.setUsername(env.getProperty("testapp.db.username"));
        ds.setPassword(env.getProperty("testapp.db.password"));
        return ds;
    }
}