我在将java
枚举转换为字符串转换时遇到问题。如果你有任何想法,请。
String mainQuerySt = "select o.ttType from Tt o";
Query mainQuery = em.createQuery(mainQuerySt);
List result = mainQuery.setFirstResult(offset).setMaxResults(numofRecords).getResultList();
我想要ttType enum
的字符串表示。怎么做?
我的Tt
定义:
@Enumerated(EnumType.ORDINAL)
@Column(name = "tt_type", nullable = false)
private TTType ttType;
我的枚举TTType
定义:
public enum TTType
{
FC,
PD
;
@Override
public String toString()
{
switch (this)
{
case FC:
return "FC";
case PD:
return "PD";
default:
throw new AssertionError();
}
}
}
由于系统处于正常状态,我现在无法在EnumType.STRING
中使用@Enumerated
。
请回复。
答案 0 :(得分:0)
一个选项可能是使用枚举构造函数如下:
public enum TTType {
FC("FC"),
PD("PD");
private String value; // the value
// Constructor
TTType(String value) {
this.value = value;
}
public String getValue() {
return this.value;
}
public String toString() {
return this.value;
}
}