首页 > 解决方案 > 如何自动将一类枚举转换为 VARCHAR

问题描述

这是基本接口:

public interface Database {
    String getCode();
}
public enum Gender implements Database {

    MALE("0101");
    
    private final String code;
    
    Gender(String code) {
        this.code = code;
    }
    
    @Override
    public String getCode() {
        return code;
    }
}
public enum State implements Database {

    CLOSE("0201");
    
    private final String code;
    
    Gender(String code) {
        this.code = code;
    }
    
    @Override
    public String getCode() {
        return code;
    }
}

我想要的是:

实体属性 自动转换 数据库(varchar)

MALE 自动转换 0101

CLOSE 自动转换 0201

我尝试使用AttributeConverter,但是当我添加一个子类时Database,我必须定义另一个AttributeConverter。还有其他更好的解决方案吗?

标签: spring-boothibernatejpaspring-data-jpahibernate-mapping

解决方案


推荐阅读