как найти и показать данные на основе строки, введенной с помощью пружины JPA - PullRequest
0 голосов
/ 22 февраля 2019

я новичок в весне jpa.Прямо сейчас я пытаюсь сделать API, который показывает одни данные из моей базы данных.Как получить строку ввода от пользователя и показать данные, основанные на этой строке ввода?

ранее я пытался показать данные на основе идентификатора, и это работает.код:

@GetMapping("/rating/{project_code}")
   public Optional<Project> getProject(@PathVariable long project_code){ 
   Optional<Project> getProjectCode = projectRepository.findById(project_code);
        return getProjectCode;
   }

но для строкового ввода я все еще не знаю.код:

@RequestMapping(method = RequestMethod.GET)
    public Optional<Detail> getProjectInfo(@RequestParam(value = "token") String token){
        Optional<Detail> getProjectInfoByToken = detailRepository.findById( Long.valueOf(token));
        return getProjectInfoByToken;
    }

я уже пытался вызвать его с почтальоном http://localhost:8080/api/rating?token=bl4ck, но это дает мне сообщение 'java.lang.NumberFormatException: для входной строки: ошибка \ "bl4ck \'. спасибо запомощь

1 Ответ

0 голосов
/ 22 февраля 2019

решено: я добавляю функцию в файл репозитория и вызываю ее в файле моего контроллера

репозиторий

@RepositoryRestResource
public interface DetailRepository extends JpaRepository<Detail, Long> {
    Detail findByToken(String token);
}

контроллер

@GetMapping(value = "/rating")
    public Detail getProjectInfo(@RequestParam(value = "token") String token){
        Detail getProjectInfoByToken = detailRepository.findByToken(token);
        return getProjectInfoByToken;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...