gpt4 book ai didi

Java - 在编译时检查属性文件

转载 作者:搜寻专家 更新时间:2023-11-01 03:03:24 25 4
gpt4 key购买 nike

今天我需要你的一些建议。

我正在做一个项目,它使用一个巨大的常量持有类。

有很多

public static final String CONST_NAME = "const_value";

我正在使用 MyConstClass.CONST_NAME 获取它们,但现在我需要将它们外部化以配置项目。

所以我想到了两种方法:

  1. 通过多个MyConstants.java配置项目

我会用其余的 Java 类编译其中一个。

由于这些是常量,因此将确保编译时安全。

  1. 添加 .properties 文件

此文件将设置我在代码中需要的每个常量。

我会用 MyConstants.get("CONST_NAME");

这样的东西来获取它们

比拥有多个 java 类(对吗?)要优雅得多,您会/不会与项目的其余部分一起编译。

但它并不能确保编译时的安全性,而编译时的安全性对于避免一些人为错误是非常必要的。

所以这是我的问题:

  1. 是否可以在编译时检查我通过 MyConstants.get("CONST_NAME"); 获得的所有属性是否存在于我的 .properties 文件中?
  2. 有没有更好的方法?

附言:

我找到了这样的主题 one还有这个other one但我认为这不是解决问题的方法。

最佳答案

当然可以在编译时使用自定义编译器任务等执行各种操作,但我认为这不太实用。

就我个人而言,我会为它们的值配置提供属性键和属性文件的枚举 - 类似于:

public enum {
CONST_NAME
}

MyConstants.get(CONST_NAME)

并在枚举上调用.toString() 以获取文本键表示。

关于Java - 在编译时检查属性文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30782356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com