Spring boot 如何将布尔数据库值映射到Java枚举

Spring boot 如何将布尔数据库值映射到Java枚举,spring-boot,jpa,enums,boolean,entity,Spring Boot,Jpa,Enums,Boolean,Entity,对于字符串,使用属性转换器很容易。如何找到布尔型的模式 我有一个枚举,它只是 public enum InsuranceStatus { Active, Inactive } 我想找到布尔值的枚举值。如果无法更改枚举: public class InsuranceStatusConverter implements AttributeConverter<InsuranceStatus, Boolean> { @Override public Boolean

对于字符串,使用属性转换器很容易。如何找到布尔型的模式

我有一个枚举,它只是

public enum InsuranceStatus
{
   Active, Inactive
} 

我想找到布尔值的枚举值。

如果无法更改枚举:

public class InsuranceStatusConverter implements AttributeConverter<InsuranceStatus, Boolean> {

    @Override
    public Boolean convertToDatabaseColumn(InsuranceStatus status) {
        return status == InsuranceStatus.Active ? true : false
    }

    @Override
    public InsuranceStatus convertToEntityAttribute(Boolean status) {
        return status == true ? InsuranceStatus.Active : InsuranceStatus.Inactive ;          
    }
}

AttributeConverter
@Rono编写一个属性转换器确实是一个输入错误。请毫不犹豫地编辑:)
 enum InsuranceStatus { 
   ACTIVE(true), INACTIVE(false);
   private boolean status;  
  
    public static InsuranceStatus valueOf(Boolean status){
        // Or throw an exception instead of returning null if more appropriate      
       if (status == null) { return null;}
       return status == true ? InsuranceStatus.ACTIVE: InsuranceStatus.INACTIVE;          

    }    
    private InsuranceStatus (boolean status) {  
         this.status = status;  
    }  
    public boolean getStatus(){
        return status;
    }      
} 

public class InsuranceStatusConverter implements AttributeConverter<InsuranceStatus, Boolean> {

    @Override
    public Boolean convertToDatabaseColumn(InsuranceStatus status) {
        return status.getStatus();
    }

    @Override
    public InsuranceStatus convertToEntityAttribute(Boolean status) {
       return InsuranceStatus.valueOf(status);                     
    }
}
@Convert(converter = InsuranceStatusConverter.class)
private InsuranceStatus status;