Весенний загрузочный интерфейс JpaRepository - PullRequest
0 голосов
/ 06 апреля 2020

Новичок в Spring Boot здесь, учиться на онлайн-ресурсе, есть вопрос. Может кто-нибудь, пожалуйста, объясните мне? Я имею в виду ссылку https://www.springboottutorial.com/creating-microservices-with-spring-boot-part-2-forex-microservice.

Я могу создать все как положено и увидеть результаты. Я понял Restcontroller, и у меня проблемы с пониманием ниже строк.

Может кто-нибудь объяснить мне, как я должен читать / понимать код ниже и как узнать, что происходит? Обратите внимание, что я не получаю никакой ошибки. Я получаю ответ на моем локальном сервере, как и ожидалось. Этот метод findByFromAndTo не имеет никакой реализации в интерфейсе, который я понимаю, но он также не имеет никакой реализации в RestController. Так как же это работает?


public interface ExchangeValueRepository extends
        JpaRepository<ExchangeValue, Long> {

    ExchangeValue findByFromAndTo(String from, String to);
}

1 Ответ

1 голос
/ 06 апреля 2020
ExchangeValue findByFromAndTo(String from, String to);  

В приведенном выше операторе ExchangeValue - ожидаемый ответ. Есть два столбца, которые мы должны найти: от и до.

Использование: если мы хотим запросить стоимость конвертации из одной валюты в другую. Получить значение обмена из базы данных.

Если мы хотим найти данные на основе одного столбца, мы можем передать имя столбца. Например:

ExchangeValue findByFrom (String from);  

Внутренняя работа:

Мы создадим запрос с использованием API критериев JPA из этого, но по сути это переводится в следующий запрос:

select e from ExchangeValue e where e.from = ?1 and e.to = ?2

Spring Data JPA выполнит проверку свойства и проследит за вложенными свойствами, как описано в ???.

Если And - это ключевое слово, findByLastnameAndFirstname - это образец, тогда JPQL-фрагмент / запрос будет… where x.lastname = ?1 and x.firstname = ?2

Более подробная информация из официальной документации: https://docs.spring.io/spring-data/jpa/docs/1.5.0.RELEASE/reference/html/jpa.repositories.html

Надеюсь, это поможет.!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...