java - 如何隐藏和抽象Java属性文件?

标签 java maven properties

我的应用程序使用许多属性文件来存储密码、URL 和其他应用程序数据。我想从源代码中提取这些文件的详细信息。这样做的最佳实践是什么?

我正在考虑在 Maven 中创建一个插件,根据应用程序部署到的环境,该插件将从数据库中提取一组特定的属性,但这似乎需要做很多工作才能实现这一点。欢迎大家提出意见。主要目标是从代码库中删除敏感数据。

谢谢

最佳答案

我使用Maven filtering和配置文件来执行此操作。在我的属性文件中,我只使用 database.password=${database.password} 等占位符,然后在本地 Maven 设置中创建一个具有 database.password 属性的配置文件设置类似于

<profiles>
    <profile>
      <id>development</id>
      <properties>
        <database.password>MySuperSecretPassword</database.password>
      </properties>
    </profile>
<profiles>

因此,当我运行 mvn install -Pdevelopment 时,它会将占位符与我的密码交换。 您可以找到更多detailed example here ,尽管看起来他将自己的配置文件保存在 pom.xml 中,而不是本地 Maven 设置文件中(可能是为了简单起见)

关于java - 如何隐藏和抽象Java属性文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15624282/

相关文章:

java - 如何仅部署 Maven 项目中的源 jar?

c# - 如何从属性访问 lambda 中提取对象引用

java - 仅最后一行被写入文件中

java - 如何在 Wear OS 中将秒针 watch 在一秒钟内旋转五次?

java - Java 中的线程安全或多线程 CRF 支持连续变量?

java - Android 中使用 RSA 解密 AES key

Maven 版本 : Could not start Tomcat

java - 在 Jenkins 中显示 OWASP Dependency-Check Maven 插件的结果

java - java中属性文件的路径

java - jndi.properties - 如何设置它?