У меня есть следующий запрос для извлечения определенных столбцов сущности / таблицы из базы данных
@Query("SELECT u.email, u.password FROM User u WHERE email = :email")
Optional<User> getCredentialsByEmail( @Param("email") String email);
Но это дает ClassCastException
, и это потому, что запрос возвращает тип Object
вместо User
.
Принимая во внимание, что, если я выберу все столбцы, как показано ниже:
@Query("SELECT u FROM User u WHERE email = :email")
Optional<User> getCredentialsByEmail( @Param("email") String email);
запрос вернет правильный тип класса, т.е. User
.Я не понимаю, почему это различие обеспечивается средой Spring.
Любые предложения, пожалуйста.