Мне нужно получить данные из базы данных по типу перечисления. я следующее перечисление:hibernate query by enum type
public enum ShopType {
VANS("VANS"), ATTICUS("ATTICUS"), FAMOUS("FAMOUS")
ShopType(String label) {
this.label = label;
}
private String label;
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
}
В моем классе DAO у меня есть метод, который возвращает список объектов по выбранному типу на jsp
странице. На странице jsp
я отправляю выбранное значение, например String
, правильно?
Вот как выглядит мой метод
@Transactional
public List<Shop> findByType(String type) {
return sessionFactory.getCurrentSession().createQuery("from Shop where type=" + ..... .list();
}
Я не знаю, как создать правильный запрос. Enum i хранит в моей базе данных как tinyint.
Описание модели.
@Column(name = "type")
@Enumerated(EnumType.ORDINAL)
private ShopType type;
результат должны зависит от типа пар, который принимает метод findByType, вы просто жёстко типа VANS – user3127896
отредактирован несколько минут назад :) –
выглядит лучше, спасибо =) – user3127896