Не удается получить данные из моей таблицы из-за ошибки sql java.sql.SQLException: неверное значение для getInt()?

Я надеюсь, у вас все хорошо, у меня есть небольшая проблема, которую я не мог решить в одиночку, я не буду лгать, я новичок, когда дело доходит до Spring и Java в целом.

У меня есть эта небольшая ошибка, как указано в заголовке, я пытаюсь получить данные из таблицы с именем tr_type_conformite, поэтому я создал класс Java DAO для получения данных из этой таблицы:

@Repository
public class ConformiteDaoImpl extends AbstractDaoImpl<Object, Long> implements ConformiteDao {

   @Autowired
   private ConfirmiteContratDaoJPA conformiteDaoJPA;

   @SuppressWarnings({ "unchecked", "rawtypes" })
   @Override
   public CrudRepository getCrudRepositoryImpl() {
      // TODO Auto-generated method stub
      return null;
   }

   @Override
   public List<TrTypeConformite> recupererListeConformitePourContrat() {
      // TODO Auto-generated method stub
      return getJPAQueryFactory().selectFrom(QTrTypeConformite.trTypeConformite).fetch();
   }

}

И вот моя Сущность:

@Entity
@Table(name = "tr_type_conformite")
@Getter @Setter
public class TrTypeConformite extends AbstractTrEntity {

    private static final long serialVersionUID = 1L;

    @Column(name = "code", nullable = false, length=11)
    private String code;

    @Column(name = "type", nullable = false)
    private EnumTypeConformite type;

    @Column(name = "ordre", nullable = false, length=11)
    private int ordre;

}

И вот мой Enum:

public enum EnumTypeConformite {

    VIGIL("VIGIL"),
    PPE("PPE"),
    T("T");

    private String value;

    private EnumTypeConformite(String value) {
        this.value = value;
    }

    public String getValue(){
        return value;
    }

}

Но когда я запускаю службу, которая вызывает мой метод DAO, я получаю эту большую ошибку:

Caused by: java.sql.SQLException: Invalid value for getInt() - 'T'

И, конечно же, большой список того, откуда возникла моя ошибка, это когда я запускаю свою службу, которая вызывает мой класс DAO.

Любая помощь приветствуется.

Каковы определения столбцов в БД?

Steve Smith 09.04.2019 16:53

Не должно быть: private String ordre; ?

juanlumn 09.04.2019 16:54

@SteveSmith Мои определения Comlumns? имея в виду ?

TaouBen 09.04.2019 16:55

Какие типы столбцов, например. varchar, int и т.д...

Steve Smith 09.04.2019 16:56

@juanlumn Нет, я так не думаю, я думаю, это из-за Моего перечисления, но я не знаю, как решить проблему.

TaouBen 09.04.2019 16:56

@SteveSmith Ну, код - это varchar, тип - это varchar, а ordre - это целое число.

TaouBen 09.04.2019 16:57

Я думаю, вам нужно аннотировать столбец типа с помощью @Enumerated, может быть, @Enumerated(EnumType.String).

Steve Smith 09.04.2019 17:02

@SteveSmith, я проверю и посмотрю, спасибо, сэр.

TaouBen 09.04.2019 17:13

@SteveSmith Вы правы, можете ли вы написать этот ответ, чтобы я мог пометить его как правильный.

TaouBen 10.04.2019 13:09

dmitrievanthony уже есть, поэтому вы можете отметить их как правильные. Спасибо.

Steve Smith 10.04.2019 13:54

ты просто был первым, спасибо

TaouBen 10.04.2019 15:23
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
3
11
423
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

JPA-сопоставление поля enum по умолчанию — это столбец int (см. EnumType.ORDINAL). Если ваш столбец является строкой, вам нужно использовать EnumType.STRING.

Попробуйте аннотировать поле enum следующим образом:

@Enumerated(EnumType.STRING)
@Column(name = "type", nullable = false)
private EnumTypeConformite type;

Другие вопросы по теме

Похожие вопросы

Что это за символы, которые приводят к сбою URLDecoder с UTF-8?
Требуется регулярное выражение для получения идентификаторов электронной почты в сообщении об исключении между символами < и >
Как я могу автоматически обновлять тестовые случаи Rally, используя интеграцию Cucumber и Rally?
Scala, как отсортировать «Нет» снизу, если они существуют, и выбрать первую строку в каждой группе?
Как проверить правильность установки агента YourKit в macOS с помощью терминала с JDK 1.8+
WebDriver для закрытия всплывающего окна через определенное время
Аутентификация Ldap с весенним облачным шлюзом
Я не могу использовать метод invokeHTTP с методом Post в NIFI
Проблема многопоточности -> получение результата потока после его завершения
Как я могу имитировать некоторые вызовы методов bean-компонента, но использовать определенный bean-компонент в вызовах других методов в том же тестовом классе?