java - 记录可用/必需的 Java 属性文件内容的最佳实践

标签 java configuration-files

是否有完善的方法来记录 Java“属性”文件内容,包括:

  • 指定给定键所需的数据类型/内容
  • 指定应用程序运行是否需要 key
  • 提供 key 含义的描述

目前,我(手动)维护一个默认的.properties文件,并且我在之前的评论中写了一个散文描述数据类型和每个键的描述。这不会导致以编程方式访问属性文件。

我想我正在寻找的是属性文件的“getopt”等价物...

[编辑:相关]

最佳答案

您可以使用 Apache Commons Configuration 中的一些功能包裹。它至少提供对您的属性的类型访问。

传统的java属性文件中只有约定。正如您所说,我看到的一些内容包括提供示例属性文件。另一种是提供所有属性的默认配置,但注释掉。

如果您真的需要某些东西,也许您不是在寻找属性文件。您可以使用 XML 配置文件并指定具有数据类型和要求的架构。您可以使用 jaxb 将架构编译成 java 并以这种方式读取它。通过验证,您可以确保所需的属性存在。

您所能期望的最好结果是,当您执行应用程序时,它会读取、解析和验证文件中的属性。如果您绝对必须保持基于属性并且不想使用 xml,但需要此解析。您可以有一个辅助属性文件,其中列出了可以包含的每个属性、它的类型以及它是否是必需的。然后,您必须编写一个属性文件 validator ,该 validator 将接收要验证的文件以及类似验证模式的属性文件。有点像

#list of required properties
required=prop1,prop2,prop3

#all properties and their types
prop1.type=Integer
prop2.type=String

我没有查看所有的 Apache 配置包,但它们通常有像这样有用的实用程序。如果您能在其中找到可以简化这一过程的内容,我不会感到惊讶。

关于java - 记录可用/必需的 Java 属性文件内容的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/731237/

相关文章:

java - 如何根据唯一键验证各个值,使用Java进行Json响应验证测试

java - ItemProcessor 的 Spring Batch 瓶颈

java - 隐藏每个 Activity 中的软按钮

php - 无法修改 Wordpress 中的标题信息错误

c# - 无法将自定义配置部分保存到 app.config

java - 使用 Spring XML 实体在带注释的文件中设置属性?

java - 在JAVA中 Controller 之间发送数据?

java - Spring MVC 一个表单将数据提供给另一个表单

java - 强制开发人员显式定义配置数据的键