0

我想将 Jasypt 添加到配置中。所以我想创建一个插件来解密所需的 application.conf 条目。

我创建了一个简单的插件,但是在调用我的 onStart() 时已经读取/执行了 db 配置。

我已经尝试过 GlobalSettings onLoadConfig 和 beforeStart,它们都是在配置数据库之后出现的。

我在哪里可以实现我的目标?

4

2 回答 2

2
public class Global extends GlobalSettings {

// inject Jasypt StandardPBEStringEncryptor

@Override
public Configuration onLoadConfig(Configuration configuration, File file, ClassLoader classLoader) {
    final Config config = ConfigFactory.parseString(String.format("db.default.user=%s", callJasyptStringEncryptor()));

    return new Configuration(config.withFallback(configuration.getWrappedConfiguration().underlying()));
}}
于 2013-06-17T10:21:37.390 回答
2

如果您使用的是 scala,

override def onLoadConfig(config: Configuration, path: File, classloader: ClassLoader, mode: Mode.Mode): Configuration = {
        val parsed = ConfigFactory.parseString("db.default.user=\"JasyptText\"")
        new Configuration(parsed.withFallback(config.underlying))
}
于 2013-07-26T18:20:30.343 回答