Как получить определенные поля с помощью API Spring Boot - PullRequest
0 голосов
/ 20 июня 2019

Мне нужно REST запрос от GET для передачи параметров поля, которое я хочу получить из базы данных sql (из hibernate)

@GetMapping("/product")
public Object getProducts(@RequestParam(name = "fields") String fields) {
   // how?
}



@Repository
public interface ProductRuRepository extends JpaRepository<Product, Long> {
@Query("SELECT ?1 FROM Product p")
List<Product> findByFields(String fields);
}

Я жду, чтобы получить полячто я передал параметру.Но проект не компилируется

1 Ответ

1 голос
/ 20 июня 2019

Пожалуйста, измените ваш код на эту структуру:

Свяжите репозиторий продукта с вашим контроллером отдыха.

   @RestController
   class ProductController {

    ProductRuRepository productRepository;

    @GetMapping("/product")
    public List<Product> getProducts(@RequestParam(name = "fields") String fields) 
    {
    List<Product> productList = productRepository.findByFields(fields);
    return productList;  
    }

    }

Ваш репозиторий вызовет исключение времени выполнения из-за синтаксической проблемы в JPA-запросе.

Измените запрос, как указано ниже.

@Query(value = "SELECT :fields FROM Product as p")
List<Product> findByFields(String fields);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...