Java静态查找常量-需要设计思想

Java静态查找常量-需要设计思想,java,static,constants,Java,Static,Constants,我是Java新手,在保存静态查找值的设计方面需要一些帮助 我有各种(150)状态,如TRANSACTIONSTATUS、LOGINSTATUS、BOOKINGSTATUS等,每个状态都有自己的一组键和值 例如: 交易状态(PD=“待定”,PE=“待定异常”,PS=“待定提交”) 登录状态(LG=“登录”,FD=“失败”UL=“用户锁定”) 我试图提出如何在应用程序启动时将这些静态值保存在内存中,并在需要时引用它们。我已经通读了java枚举,并将属性保存在哈希映射中,但不确定如何保存。请帮忙。这是

我是Java新手,在保存静态查找值的设计方面需要一些帮助

我有各种(150)状态,如TRANSACTIONSTATUS、LOGINSTATUS、BOOKINGSTATUS等,每个状态都有自己的一组键和值

例如:

  • 交易状态(PD=“待定”,PE=“待定异常”,PS=“待定提交”)
  • 登录状态(LG=“登录”,FD=“失败”UL=“用户锁定”)

  • 我试图提出如何在应用程序启动时将这些静态值保存在内存中,并在需要时引用它们。我已经通读了java枚举,并将属性保存在哈希映射中,但不确定如何保存。请帮忙。

    这是我能想到的。您可以类似地为LoginStatus构造一个枚举。任何像样的Java参考资料都将有助于您的进一步开发

    public enum TransactionStatus
    {
        PD("Pending"),
        PE("Pending Exception"),
        PS("Pending Submission");
    
        private final String value;
    
        TransactionStatus(String value)
        {
            this.value = value;
        }
        public String getValue()
        {
            return value;
        }
    }
    

    同意。是否有办法在单个枚举中管理所有状态?像TransactionStatus、LoginStatus等?我不建议使用单个枚举。使用单独的枚举将阻止代码在登录事件期间应用TransactionStatus。只需重新迭代,您提供的枚举类别适用于不同的对象。为每个类别创建单独的枚举是正确的方法。这可以确保通过使用类型安全状态设置器为正确的对象设置正确的状态。使用单个枚举很容易导致设置,例如BookingStatus.FAILED on a Transaction。就访问它们而言,您可以访问任何枚举,而无需任何特殊构造。例如,TransactionStatus.PD随时可供您使用。