java - 如何为数据库及其对应的表和列编写嵌套枚举代码

标签 java jakarta-ee enums

我正在开发我的项目,其中有一个没有数据库的大型数据库,并且表、列有

所以我的计划是做一些事情,比如将来我必须更改我的数据库名称或表名称或列名称,所以我只更改一个地方,所有更改都会在数据库名称表或列名称所在的位置自动完成使用过。

然后我必须决定使用枚举,因此枚举应该嵌套,并且每个属性都可以有其字符串值,这样只有字符串值的更改才能更改其使用的所有位置

so please help me some buddy to give me some sample of code samll code by which i can do it for my database 

eg DATABASE->TABLE->COLUMNS
public enum DATABASE
{
    //
}

i want enum sample code for database and nested enums for their tables and one of its  nested enum for their columns please help me...!!! 

i have tried it to find it but not got some thing usefull

好的,我得到了答案 这是

public enum DATABASE
{
  DB1(TABLE.TBL1, TABLE.TBL2);

  private final TABLE[] tblArray;
  private DATABASE(TABLE... tables)
  {
    tblArray = tables;
  }
  public TABLE[] getTables()
  {
    return tblArray;
  }
}
public enum TABLE
{
  TBL1(COLUMN.CLMN1, COLUMN.CLMN2), TBL2(COLUMN.CLMN2);

  private final COLUMN[] clmnArray;
  private TABLE(COLUMN... columns)
  {
    clmnArray = columns;
  }
  public COLUMN[] getColumns()
  {
    return clmnArray;
  }
}
public enum COLUMN
{
  CLMN1, CLMN2;
}

实际上我在枚举方面并不完美,所以请告诉我如何访问数据库、表和列意味着如果我想要 DB1->TB1->CLMN2 那么如何编写代码...

最佳答案

这不是枚举,但我认为你想要什么:

public abstract class DATABASE
{
   public static class TABLE_ONE
   {
       public static final String NAME = "TableOne";
       public static final String COL_ONE = "COLUMN_ONE";
       public static final String COL_TWO = "COLUMN_TWO";
   }
}

您可以像 DATABASE.TABLE_ONE.COL_ONE 等那样使用它。

为什么我认为这很危险:如果您在此处更改常量,您还必须处理数据库更新,并介意人们从软件的一个版本升级到另一个版本。所以要小心!

关于java - 如何为数据库及其对应的表和列编写嵌套枚举代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13815506/

相关文章:

forms - Spring 形式 :options tag with enum

java - Eclipse识别包

java - 通过 NAT 将 UDP 数据包发送到 IP

java - DoD CAC ADPU 命令

java - 在不使用 hibernate.hbm2ddl.auto 的情况下,如何将所有初始模式导出到 Flyway?

typescript - 将枚举值映射到类型

java - 将新的 OSGI 包添加到本地 p2 存储库

java - 将 EAR 模块转换为 OSGI 包的正确方法

java - request.getParameter 中的空值

java - 枚举内部类不被识别为枚举