[英]enum to string in JPQL select query
I am facing problem in converting java
enum to string conversion. 我在将
java
枚举转换为字符串转换时遇到问题。 Please if you have any idea. 如果您有任何想法请。
String mainQuerySt = "select o.ttType from Tt o";
Query mainQuery = em.createQuery(mainQuerySt);
List result = mainQuery.setFirstResult(offset).setMaxResults(numofRecords).getResultList();
I want the string representation of ttType enum
. 我想要ttType
enum
的字符串表示形式。 How to do it? 怎么做?
My Tt
Definition: 我的
Tt
定义:
@Enumerated(EnumType.ORDINAL)
@Column(name = "tt_type", nullable = false)
private TTType ttType;
My enum TTType
definition: 我的枚举
TTType
定义:
public enum TTType
{
FC,
PD
;
@Override
public String toString()
{
switch (this)
{
case FC:
return "FC";
case PD:
return "PD";
default:
throw new AssertionError();
}
}
}
I can't use EnumType.STRING
in @Enumerated
now since the system is live. 由于系统处于活动
@Enumerated
所以我现在不能在@Enumerated
使用EnumType.STRING
。
Please reply. 请回复。
One option may be to use enum constructor as bellow: 一种选择是使用enum构造函数作为波纹管:
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;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.