gpt4 book ai didi

java - 如何在 Java Spring Boot 应用程序中从 mysql 动态生成 Enum 类型?

转载 作者:行者123 更新时间:2023-12-04 07:16:13 28 4
gpt4 key购买 nike

在我的项目中,我们希望以 Enum 类型管理所有 REST API 错误代码,如下面的代码:

package com.example.util
public enum ErrorType{
SUCCESS("0000", "success")
PARAMS_EMPTY("3001", "params cannot be empty")
}
我们遇到的问题是如果我们把这个类放到util包中,每次在business spring boot app中添加一个新的错误类型,都需要修改、发布、重新编译app和util项目,这样维护起来会很困难util包。基本上,我们更喜欢维护一个相对稳定的实用包。
所以我们在考虑有没有办法动态生成Enum类型,我们可以提前在mysql中配置错误信息,然后在应用程序启动过程中加载到enum类型中。
我不确定在 Java 中动态生成枚举类型是否是一个好主意,或者是否有更好的解决方案来解决这个问题。

最佳答案

您不能在枚举中添加或删除值。枚举是完整的静态枚举。
如果您需要处理变量值,则需要使用标准类。
例如,您可以有以下内容:

public Error {
public static Error getByName(String name) {
....
}

public static Error getByCode(int code) {
....
}
}
并按如下方式使用它:
 Error myError404 = Error.getByCode(404);
显然,这段代码为您提供了很大的灵活性,但您无法提前知道特定的错误代码是否存在。并且您不能使用与枚举相关的 ide 工具。

关于java - 如何在 Java Spring Boot 应用程序中从 mysql 动态生成 Enum 类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68740082/

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