我正在尝试在 jqp 查询中使用枚举但出现错误
org.hibernate.QueryException: Not all named parameters have been set: [Deactivated]
这是我的代码
import com.uzzz.enums.DStateEnum;
@Enumerated(EnumType.STRING)
@Query("SELECT dlCode FROM GDETable WHERE d.Id = ?1 AND d.dState.state <> :Deactivated")
List<String> findAllDsCodeExcludingDeactivatedById(Integer Id);
如何解决这个问题?
这是 DStateEnum.java
public enum DStateEnum {
Cancelled("Cancelled"),
Active("Active"),
Paused("Paused"),
Deactivated("Deactivated");
private DStateEnum(final String name){
this.name = name;
}
private String name;
public String getName() {
return name;
}
@Override
public String toString() {
return name;
}
public static DStateEnum fromString(String text) {
if (text != null) {
for (DStateEnum b : DStateEnum.values()) {
if (text.equalsIgnoreCase(b.getName())) {
return b;
}
}
}
return null;
}
}