0
我面臨將java
枚舉轉換爲字符串轉換的問題。請如果你有任何想法。枚舉到JPQL選擇查詢中的字符串
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();
}
}
}
我不能@Enumerated
使用EnumType.STRING
,因爲現在的系統是活的。
請回復。
所以你不希望在數據庫級這就是爲什麼避免''EnumType.STRING''改變價值? –
@rev_dihazum:是的,因爲它需要數據遷移,我想避免它。謝謝 – sarwar026
你的''String toString()''方法也無法達到目的?我想它應該工作。 –