Java枚举int值只能与JPA按顺序存储?

Java枚举int值只能与JPA按顺序存储?,java,jpa,enums,Java,Jpa,Enums,我有一个简单的枚举,如下所示: public enum Tax { NONE(10), SALES(20), IMPORT(30); private final int value; private Tax(int value) { this.value = value; } public int getValue() { return value; } } @Entity public Person {

我有一个简单的枚举,如下所示:

public enum Tax {
    NONE(10), SALES(20), IMPORT(30);

    private final int value;
    private Tax(int value) {
        this.value = value;
    }

    public int getValue() {
        return value;
    }
}


@Entity
public Person {

.........

   private TAX tax = TAX.NONE;
   public TAX getTax() {
      return tax;
   }

   public void setTax(Tax tax) {
      this.tax = tax;
   }

.............
}
通过JPA在数据库中保存Person对象时,对象的tax字段在数据库中保存的值为0,值为tax.NONE

为什么不在数据库中保存10个呢?我怎样才能让JPA通过JPA在数据库中为TAX.NONE节省10英镑

谢谢

JPA在数据库中存储枚举值的标识,其索引(序号)或名称(字符串)。没有内置的方法从枚举上的字段检索正确的枚举实例,多个实例可能具有相同的字段值。如果确实希望在数据库中存储辅助字段值,可以为持久性提供程序编写自己的转换器