枚举作为Spring-data-cassandra中Map的值类型

时间:2017-11-21 14:26:29

标签: java spring dictionary enums cassandra

在spring-data-cassandra中,我如何在我的一个实体中的Map中使用Enum。 E.g。

public class User implements Serializable {
  private Map<String, LanguageLevel> languageToLevelMap;

  // getters and setters omitted
}

这里,LanguageLevel是一个Enum。

public enum LanguageLevel {
  GOOD,
  BAD
}

结果是

com.datastax.driver.core.exceptions.CodecNotFoundException: Codec not found for requested operation: [ANY <-> de.test.LanguageLevel]

1 个答案:

答案 0 :(得分:0)

首先创建像这样的枚举

public enum LangEnums { LANGUAGELEVEL}

然后创建像这样的HasMap

Map <String, Enum>  mapWithEnums=new HashMap<>()
mapWithEnums.put("Test", LANGUAGELEVEL)